2008-09-06 5 views
5

Обновление старого сайта ASP/Access для клиента - мне нужен SQL, чтобы добавить столбец в существующую таблицу и установить значение по умолчанию. Не работает - какие-то идеи?SQL для добавления столбца со значением по умолчанию - Access 2003

Это прекрасно работает

ALTER TABLE documents ADD COLUMN membersOnly NUMBER 

Я хочу, чтобы это работало:

ALTER TABLE documents ADD COLUMN membersOnly NUMBER DEFAULT 0 

ли гугл и увидеть инструкции для значений по умолчанию работают для других типов полей, но я хочу, чтобы добавить номер. Благодаря!

+0

Спасибо, [что работало отлично] (http://stackoverflow.com/questions/47535/sql-to-add-column-with-default-value-access- 2003 # 47552). Но это означает, что мне нужно загрузить MDB, чтобы сделать это, и я хотел SQL, чтобы мне не пришлось его отключать! Я разработал, что YESNO имеет внутреннее значение по умолчанию, поэтому я могу избежать этого в этом случае. Замечательно знать об ANSI-совместимом режиме, хотя - большое спасибо. – Polsonby 2008-09-06 15:35:52

ответ

8

Инструменты - > Опции - > Таблицы/Запросы - > (Внизу справа :) Синтаксис Sql Server Compatible Syntax - включить эту базу данных для включения.

, то вы можете выполнить запрос:

ALTER TABLE documents ADD COLUMN membersOnly NUMBER DEFAULT 0 
+1

Это не работает для меня. Он создает столбец, но не устанавливает значение по умолчанию. – JohnMerlino 2011-02-01 01:10:51

+0

+1 Спасибо, не знал об этом варианте. Нет необходимости просто добавлять предложение DEFAULT, и он не позволяет добавлять стандартный CONSTRAINT по умолчанию, используя стандартный синтаксис, но я уверен, что это будет полезно для чего-то. – harpo 2011-02-05 17:17:39

0

Как вы подключения к базе данных для выполнения SQL обновления? Вы можете использовать режим совместимости с ODBC через ADO. Без открытия базы данных в Access.

0

Синтаксис Sql Server Compatible Syntax уже включен, поэтому определенно стоит попробовать запустить упомянутый выше оператор sql (через ADO-соединение из ASP), прежде чем приступать к использованию db в автономном режиме. Спасибо, это помогло мне.

6

С помощью ADO вы можете выполнить оператор DDL для создания поля и установить его значение по умолчанию.

CurrentProject.Connection.Execute _ 
    "ALTER TABLE discardme ADD COLUMN membersOnly SHORT DEFAULT 0" 
0

Инструменты -> Параметры -> Таблицы/Запросы -> (В правом нижнем углу :) Sql Server Совместимость Синтаксис - вариант включите для этой базы данных.

не найден в MS Access 2010

Смежные вопросы