4.5.7.    Проверка значений полей

Ограничение CHECK позволяет определять условие, которому должно удовлетворять вводимое в поле таблицы значение, преж­де чем оно будет принято. Любая попытка обновить или заме­нить значение поля такими, для которых предикат, задаваемый ограничением CHECK, имеет значение ложь, будет отвергаться.

Рассмотрим таблицу STUDENT. Значение столбца STIPEND в этой таблице выражается десятичным числом. Наложим на значения этого столбца ограничение — величина размера сти­пендии должна быть меньше 200.

Соответствующий запрос имеет следующий вид:

CREATE  TABLE STUDENT (STUDENT_ID  INTEGER PRIMARY KEY, *        SURNAME CHAR   (25)    NOT NULL,

NAME CHAR    (10)     NOT NULL,

STIPEND INTEGER CHECK   (STIPEND < 200),

KURS INTEGER, CITY CHAR   (15),

BIRTHDAY DATE, UNIV_ID INTEGER) ;