Ограничение MySQL CHECK
Ограничение MySQL CHECK
Ограничение CHECK
используется для ограничения диапазона значений, которые можно поместить в столбец.
Если вы определите CHECK
ограничение для столбца, оно позволит использовать только определенные значения для этого столбца.
Если вы определяете CHECK
ограничение для таблицы, оно может ограничивать значения в определенных столбцах на основе значений в других столбцах в строке.
ПРОВЕРИТЬ на СОЗДАТЬ ТАБЛИЦУ
Следующий SQL создает CHECK
ограничение для столбца «Возраст» при создании таблицы «Люди». Ограничение CHECK
гарантирует, что возраст человека должен быть 18 лет или старше:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
CHECK (Age>=18)
);
Чтобы разрешить именование CHECK
ограничения и определить
CHECK
ограничение для нескольких столбцов, используйте следующий синтаксис SQL:
CREATE TABLE Persons
(
ID int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Age int,
City varchar(255),
CONSTRAINT CHK_Person CHECK (Age>=18 AND City='Sandnes')
);
CHECK на ALTER TABLE
Чтобы создать CHECK
ограничение для столбца «Возраст», когда таблица уже создана, используйте следующий SQL:
ALTER TABLE Persons
ADD CHECK (Age>=18);
Чтобы разрешить именование CHECK
ограничения и определить
CHECK
ограничение для нескольких столбцов, используйте следующий синтаксис SQL:
ALTER TABLE Persons
ADD CONSTRAINT CHK_PersonAge CHECK (Age>=18 AND City='Sandnes');
ПРОВЕРИТЬ Ограничение
Чтобы удалить CHECK
ограничение, используйте следующий SQL:
ALTER TABLE Persons
DROP CHECK CHK_PersonAge;