Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
db / Лекции / 6 семестр / Языки запросов.docx
Скачиваний:
134
Добавлен:
23.03.2015
Размер:
280.32 Кб
Скачать
      1. Изменение ограничений целостности

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

  • добавлять новые ограничения (столбца и таблицы);

  • удалять существующие ограничения (столбца и таблицы).

Изменять существующие ограничения целостности нельзя. Их нужно удалить и затем определить новые.

К существующему столбцу можно добавлять только значение по умолчанию и ограничение NOT NULL. Все другие ограничения добавляются к столбцу в синтаксисе ограничений таблицы. Используйте следующий формат этой команды для добавления ограничения:

ALTER TABLE имя_таолицы MODIFY

имя_столбца (ограниченнее, ограничение]...);

Например, предложение:

ALTER TABLE TEACHER MODIFY

(IDCode CONSTRAINT tch_idc NOT NULL DEFAULT '1111111111');

приводит к добавлению ограничения целостности ограничения NOT NULL и значения по умолчанию. Добавление ограничений таблицы описывается точно так же, как и добавление столбца:

ALTER TABLE ADD ограничение_целостности;

Например, предложение:

ALTER TABLE TEACHER ADD UNIQUE (IDCode);

приводит к добавлению нового ограничения целостности к таблице TEACHER.

Удаление ограничений производится командой ALTER TABLE DROP, которая имеет три варианта:

ALTER TABLE имя_таблицы DROP PRIMARY KEY [CASCADE];

ALTER TABLE имя_таблицы DROP UNIQUE (столбец[, столбец]...) [CASCADE];

ALTER TABLE имя_таблицы DROP CONSTRAINT имя_ограничения;

Фраза CASCADEуказывает, что необходимо автоматически удалять ссылочные ограничения целостности, которые используют удаляемое ограничение первичного или уникального ключа. Обратите внимание, что для удаления остальных ограничений необходимо указать их имя. В связи с этим рекомендуем при определении ограничений целостности всегда задавать имена.Приведем примеры удаления ограничений.

ALTER TABLE TEACHER DROP CONSTRAINT tch_chk_sal_ris2;

ALTER TABLE TEACHER DROP UNIQUE (IDCode);

      1. Итоги лекции

Усвоив материал этой лекции, студенты научились:

  • определять ограничения целостности в синтаксисе ограничения столбца и синтаксисе ограничения таблицы;

  • изменять ограничения целостности;

  • удалять ограничения целостности.

  1. Программирование бд (19)