Создание ограничений CHECK
Вы можете создать ограничение проверка в таблице, чтобы указать допустимые значения данных в одном или нескольких столбцах в SQL Server 2014 с помощью SQL Server Management Studio или Transact-SQL.
В этом разделе
Перед началом работы
Создание нового проверочного ограничения с помощью следующих средств:
Перед началом
Безопасность
Разрешения
Требуется разрешение ALTER на таблицу.
Использование среды SQL Server Management Studio
Создание нового проверочного ограничения
В обозревателе объектовразверните таблицу, в которую необходимо добавить проверочное ограничение, щелкните правой кнопкой пункт Ограничения и выберите команду Создать ограничение.
В диалоговом окне Проверочные ограничения установите курсор в поле Выражение и затем нажмите кнопку с многоточием (…).
В диалоговом окне Выражение проверочного ограничения введите выражения SQL, соответствующие проверочному ограничению. Например, чтобы ограничить записи в столбце
SellEndDate
таблицыProduct
значениями, которые больше или равны дате в столбцеSellStartDate
или равны NULL, введите следующее:SellEndDate >= SellStartDate OR SellEndDate IS NULL
Чтобы ограничить записи в столбце
zip
записями, состоящими из 5 цифр, введите:zip LIKE '[0-9][0-9][0-9][0-9][0-9]'
Примечание
Убедитесь, что все нечисловые ограничения по значению заключены в одиночные кавычки (').
Нажмите кнопку ОК.
В категории Идентификация можно изменить имя проверочного ограничения и добавить описание (расширенное свойство) ограничения.
В категории Конструктор таблиц можно задать время принудительного выполнения проверочного ограничения.
На: Выберите «Да» в следующих полях: Проверить ограничение для данных, которые существовали до создания ограничения Проверить существующие данные при создании или включении Принудительно применять ограничение при каждой операции репликации данной таблицы Принудительное применение для репликации Принудительно применять это ограничение при каждой вставке или обновлении строки таблицы Применять для INSERT и UPDATE Щелкните Закрыть.
Использование Transact-SQL
Создание нового проверочного ограничения
В обозревателе объектовподключитесь к экземпляру компонента Компонент Database Engine.
На стандартной панели выберите пункт Создать запрос.
Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить.
ALTER TABLE dbo.DocExc ADD ColumnD int NULL CONSTRAINT CHK_ColumnD_DocExc CHECK (ColumnD > 10 AND ColumnD < 50); GO -- Adding values that will pass the check constraint INSERT INTO dbo.DocExc (ColumnD) VALUES (49); GO -- Adding values that will fail the check constraint INSERT INTO dbo.DocExc (ColumnD) VALUES (55); GO
Дополнительные сведения см. в разделе ALTER TABLE (Transact-SQL).