Основы языка TRANSACT SQL. Казакова И.А. - 40 стр.

UptoLike

Составители: 

39
ограничение уникальности UNIQUE;
ограничение значения NULL;
ограничение на проверку CHECK.
столбец [,…] связывает с ограничениями один или несколько
столбцов. Столбцы перечисляются через запятую. Список столбцов
следует заключать в скобки;
предикат определяет предикат для ограничений типа CHECK;
откладывание_ограничения определяет для ограничения тип
DEFERRABLE (допускающий откладывание) или NOT DEFERRABLE
(не допускающий откладывание). Если ограничение может быть с
отложенной проверкой, то можно указать, чтобы проверка наруше-
ния правил производилась в конце транзакции. Если ограничение не
допускает откладывния, то выполнение правил проверяется после
каждой инструкции SQL;
время_откладывания для ограничений с отложенной про-
веркой определяется, является ли оно изначально откладываемым
(INITIALLY DEFERRED) или изначально безотлагательным. Для
изначально откладываемого ограничения время проверки сдвигает-
ся до конца транзакции, даже если она состоит из множества инст-
рукций SQL. Для изначально безотлагательного ограничения про-
верка ограничения производится в конце каждой инструкции SQL.
7.2.2. Ограничение первичных ключей
Первичный ключ атрибут или набор атрибутов, однозначно
определяющих объект. Первичные ключи таблицы это специаль-
ные случаи комбинирования ограничений UNIQUE и NOT NULL.
Первичные ключи имеют следующие особенности:
таблица может содержать только один первичный ключ;
внешние ключи по умолчанию ссылаются на первичный
ключ таблицы;
Пример 12. Создание таблицы Kafedra с ограничением пер-
вичного ключа.
CREATE TABLE Kafedra
(
ID_Kaf INTEGER PRIMARY KEY CHECK (ID_Kaf>=1 AND
ID_Kaf<=6),
NameKaf CHAR(7) NOT NULL
);
      ограничение уникальности UNIQUE;
      ограничение значения NULL;
      ограничение на проверку CHECK.
     столбец [,…] связывает с ограничениями один или несколько
столбцов. Столбцы перечисляются через запятую. Список столбцов
следует заключать в скобки;
     предикат определяет предикат для ограничений типа CHECK;
     откладывание_ограничения определяет для ограничения тип
DEFERRABLE (допускающий откладывание) или NOT DEFERRABLE
(не допускающий откладывание). Если ограничение может быть с
отложенной проверкой, то можно указать, чтобы проверка наруше-
ния правил производилась в конце транзакции. Если ограничение не
допускает откладывния, то выполнение правил проверяется после
каждой инструкции SQL;
     время_откладывания – для ограничений с отложенной про-
веркой – определяется, является ли оно изначально откладываемым
(INITIALLY DEFERRED) или изначально безотлагательным. Для
изначально откладываемого ограничения время проверки сдвигает-
ся до конца транзакции, даже если она состоит из множества инст-
рукций SQL. Для изначально безотлагательного ограничения про-
верка ограничения производится в конце каждой инструкции SQL.

           7.2.2. Ограничение первичных ключей
     Первичный ключ – атрибут или набор атрибутов, однозначно
определяющих объект. Первичные ключи таблицы — это специаль-
ные случаи комбинирования ограничений UNIQUE и NOT NULL.
Первичные ключи имеют следующие особенности:
      таблица может содержать только один первичный ключ;
      внешние ключи по умолчанию ссылаются на первичный
ключ таблицы;
     Пример 12. Создание таблицы Kafedra с ограничением пер-
вичного ключа.
     CREATE TABLE Kafedra
     (
     ID_Kaf INTEGER PRIMARY KEY CHECK (ID_Kaf>=1 AND
ID_Kaf<=6),
      NameKaf CHAR(7) NOT NULL
     );

                              39