CREATE DOMAIN TYear AS SMALLINT CHECK (VALUE BETWEEN 1990 AND 2100);. Просмотреть список доменов, определенных в БД, и структуру каждого из них можно в IBExpert с помощью инспектора объектов.
Определение существующего домена можно изменить с помощью запроса ALTER DOMAIN. Этот запрос позволяет:
- удалить существующее и определить новое значение по умолчанию (заменяя при этом старое значение, если оно было указано);
- удалить существующее и ввести новое ограничение целостности.Синтаксис запроса ALTER DOMAIN имеет следующий формат:
ALTER DOMAIN имя_домена {
[SET DEFAULT { литерал| NULL | USER}]
| [DROP DEFAULT]
| [ADD [CONSTRAINT] CHECK (<ограничение_домена>)]
| [DROP CONSTRAINT] };,
где
SET DEFAULT – указывает для существующего домена значение по умолчанию;
DROP DEFAULT - для существующего домена удаляет значение по умолчанию;
ADD [CONSTRAINT] CHECK - добавляет ограничение для существующего домена;
DROP CONSTRAINT – удаляет CHECK ограничение из определения домена.
Например, созданный домен Telephone можно изменить, удалив ограничение, следующим запросом:
ALTER DOMAIN Telephone DROP CONSTRAINT; или установив другое значение по умолчанию следующим запросом: ALTER DOMAIN Telephone SET DEFAULT '111111';.
Существующий домен можно удалить с помощью запроса DROP DOMAIN, имеющего следующий синтаксис:
DROP DOMAIN имя_домена;.
Примечание. Домен не будет удален, если на него имеются какие-либо ссылки, т.е. существуют таблицы со столбцами, определенными на этом домене.
Например, если попытаться на учебной БД удалить домен BOOLEAN: DROP DOMAIN BOOLEAN;,
то будет выдано сообщение об ошибке следующего вида: "column BOOLEAN is used in table REQUEST (localname EXECUTED) and cannot be dropped" [столбец BOOLEANиспользуется в таблице REQUEST(локальное имя EXECUTED) и не может быть удален].
предыдущаяследующая