Застосування умови CHECK в SQL-виразах

Матеріал представлений на сторінці взятий з ресурсу http://www.w3schools.com/sql/


Умова CHECK в SQL-виразі при створенні таблиці CREATE TABLE

Слідуючий SQL-вираз створює колонку "P_Id" з умовою CHECK при створенні таблиці "Persons" (для MySQL). Умова CHECK перевіряє, що поле "P_Id" має бути з числом більше 0.

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CHECK (P_Id>0)
)

Дозволяється застосовувати умову CHECK для декількох колонок одночасно, використовуючи слідуючий SQL-вираз

CREATE TABLE Persons
(
P_Id int NOT NULL,
LastName varchar(255) NOT NULL,
FirstName varchar(255),
Address varchar(255),
City varchar(255),
CONSTRAINT chk_Person CHECK (P_Id>0 AND City='Sandnes')
)

Умова CHECK в SQL-виразі при внесенні змін до таблиці ALTER TABLE

Слідуючий SQL-вираз перевіряє дані колонки "P_Id", коли таблиця "Persons" вже створена.

ALTER TABLE Persons
ADD CHECK (P_Id>0)

Для декількох колонок

ALTER TABLE Persons
ADD CONSTRAINT chk_Person CHECK (P_Id>0 AND City='Sandnes')

Вилучення умови CHECK

ALTER TABLE Persons
DROP CHECK chk_Person