Вы можете выполнить 2 оператора, чтобы добавить столбец, а затем ограничение CHECK
, как в этом протестированном примере из Access 2010 ...
Dim strSql As String
strSql = "ALTER TABLE [GUEST] ADD COLUMN age int;"
CurrentProject.Connection.Execute strSql
strSql = "ALTER TABLE [GUEST] ADD CONSTRAINT CheckAge CHECK (age >= 18);"
CurrentProject.Connection.Execute strSql
Обратите внимание, что добавление ограничения CHECK
должно выполняться с использованием ADO (объекты данных ActiveX) или другой метод, основанный на OleDb. Приведенный выше оператор ADD CONSTRAINT
завершится ошибкой, если попытаться выполнить его с помощью метода DAO (Data Access Objects).
Выполнение оператора из CurrentProject.Connection
было успешным, потому что это объект ADO и использует OleDb ...
? CurrentProject.Connection.Provider
Microsoft.ACE.OLEDB.12.0
Наконец, хотя подход с ограничениями CHECK
может работать, другие читатели может оказаться, что Правило проверки будет более удобным способом указать, что требование данных> = 18.