CHECK - Проверить
Команда CHECK ограничивает значение, которое может быть помещено в столбец.
CHECK в CREATE TABLE
Следующий SQL создает контрольное ограничение для столбца "Возраст" при создании таблицы "Персона". Контрольное ограничение гарантирует, что у вас не может быть ни одного человека моложе 18 лет:
MySQL:
CREATE TABLE Persons
(
Age int,
CHECK (Age>=18)
);SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Age int CHECK (Age>=18)
);Чтобы разрешить именование контрольного ограничения и определить контрольное ограничение для нескольких столбцов, используйте следующий синтаксис SQL:
MySQL / SQL Server / Oracle / MS Access:
CREATE TABLE Persons
(
Age int,
City varchar(255),
CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);CHECK в ALTER TABLE
Чтобы создать контрольное ограничение для столбца "Возраст", когда таблица уже создана, используйте следующий SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CHECK (Age>=18);Чтобы разрешить именование контрольного ограничения и определить контрольное ограничение для нескольких столбцов, используйте следующий синтаксис SQL:
MySQL / SQL Server / Oracle / MS Access:
ALTER TABLE Persons
ADD CONSTRAINT CHK_PersonAge CHECK (Age>=18 AND City='Sandnes');DROP в CHECK CONSTRAINT
Чтобы удалить ограничение проверки, используйте следующий SQL:
SQL Server / Oracle / MS Access:
ALTER TABLE Persons
DROP CONSTRAINT CHK_PersonAge;MySQL:
ALTER TABLE Persons
DROP CHECK CHK_PersonAge;