ВВЕДЕНИЕ В СИСТЕМЫ УПРАВЛЕНИЯ БАЗАМИ ДАННЫХ



         

Синтаксис операторов SQL, использующих ограничения


Стандарт SQL описывает следующие операторы, в которых может быть использованы ограничения:

  • CREATE DOMAIN - создать домен
  • ALTER DOMAIN - изменить домен
  • DROP DOMAIN - удалить домен
  • CREATE TABLE - создать таблицу
  • ALTER TABLE - изменить таблицу
  • DROP TABLE - удалить таблицу
  • CREATE ASSERTION - создать утверждение
  • DROP ASSERTION - удалить утверждение
  • COMMIT WORK - зафиксировать транзакцию
  • SET CONSTRAINTS - установить момент проверки ограничений

    CREATE DOMAIN Имя домена [AS] Тип данных

    [DEFAULT Значение по умолчанию]

    [Имя ограничения] Ограничение check [Атрибуты ограничения]

    Этот оператор задает домен, на основе которого можно определять колонки таблиц. Т.к. имя колонки, которая будет основана на этом домене заранее неизвестно, то в ограничении CHECK домена для ссылки на значение этого домена используется ключевое слово VALUE. В конкретной таблице СУБД заменит слово VALUE на имя колонки таблицы.

    Пример 18. Приведенный ниже оператор создает домен Salary на основе целочисленного типа данных, причем значения из этого домена не могут принимать неположительные значения (но могут принимать значение NULL!). По умолчанию это ограничение проверяется немедленно, но может быть и отложенным: CREATE DOMAIN Salary AS integer CHECK (VALUE > 0) DEFERRABLE INITIALLY IMMEDIATE

    ALTER DOMAIN Имя домена

    {SET DEFAULT Значение по умолчанию}

    | {DROP DEFAULT}

    | {ADD [Имя ограничения] Ограничение check [Атрибуты ограничения]}

    | {DROP CONSTRAINT Имя ограничения}

    Этот оператор изменяет имеющийся домен. Стандарт запрещает вносить несколько изменений одной командой ALTER DOMAIN. Т.е. если требуется удалить ограничение CHECK и добавить значение по умолчанию, то придется выполнить два оператора ALTER DOMAIN.

    DROP DOMAIN Имя домена CASCADE | RESTRICT

    Этот оператор уничтожает имеющийся домен. Если указана опция RESTRICT, то домен не уничтожается, если имеются ссылки на него из столбцов таблиц. Если указана опция CASCADE, то происходят следующие действия:

  • Тип данных домена передается столбцам, основанным на этом домене.
  • Если столбец не имеет значения по умолчанию, а для домена значение по умолчанию определено, то оно становится значением по умолчанию для столбца.
  • Все ограничения домена становятся ограничениями столбца.




    Содержание  Назад  Вперед