Определение ограничений столбца

  • Часть 1
  • | 2
  • | 3
  • | 4
  • | 5

CREATE TABLE Abonent (AccountCD VARCHAR(6) NOT NULL

CONSTRAINT xpka PRIMARY KEY StreetCD INTEGER, HouseNo SMALLINT, FlatNo SMALLINT, Fio VARCHAR(20), Phone VARCHAR(15));. Таким образом, при создании таблицы Abonent определяется ограничение с именем xpka, указывающее в качестве первичного ключа таблицы столбец AccountCD.

Для каждого столбца можно назначить условие проверки указанием в ограничении столбца предложения CHECK(<условие_проверки>).

При этом каждый раз, когда в такой столбец будут добавляться новые или обновляться существующие данные, автоматически будет происходить их проверка в соответствии с <условиемпроверки>, которое имеет следующий формат:

<условие_проверки>::= [NOT] <условие_проверки1>

[[AND|OR][NOT] <условие_проверки2>]…, где

<условие_проверки>::= {<значение> <операция_сравнения> { <значение1> | (<скалярный_подзапрос>)

| {ANY| ALL} (<подзапрос_столбца>)} | <значение> [NOT] BETWEEN <значение1> AND <значение2> | <значение> [NOT] LIKE 'шаблон' [ESCAPE 'символ пропуска'] | <значение> [NOT] CONTAINING <значение1> | <значение> [NOT] STARTING [WITH] <значение1>

| <значение> [NOT] IN (<значение1> [ , <значение2> …] | <подзапрос_столбца>) | <значение> IS [NOT] NULL | <значение> IS [NOT] DISTINCT FROM <значение1> | EXISTS(<табличный_подзапрос>) | SINGULAR (<табличный_подзапрос>)}, где

<значение> ::= { столбец | константа| <выражение> | функция}; <операция_сравнения> ::= {= | < | > | <= | >= | <> };

<табличный_подзапрос>::= запрос select, возвращающий набор строк и столбцов;

предыдущаяследующая