NONE - при удалении значение атрибута внешнего ключа не меняется. Запись об игроке "повисает в воздухе", т. е. ссылается на несуществующую уже команду. Такая ситуация характерна для "плоских" таблиц. Например, если информация об игроках и командах хранится в dbf-файлах, можно удалить запись о команде, при этом файл игроков "ничего не будет знать" о том, что соответствующей команды не существует. Поэтому в настольных или файл-серверных системах функциональность, обеспечивающая правила ссылочной целостности, реализуется в клиентском приложении.
Правила удаления управляют тем, что будет происходить в БД при удалении строки. Аналогично правила вставки и обновления управляют тем, что будет происходить с БД, если строки изменяются или добавляются. Например, можно установить правило, которое разрешает вносить новую команду только в том случае, когда в нее зачислен хотя бы один игрок. Желаемое поведение может быть достигнуто следующими действиями:
Задать мощность связи между сущностями
Присвоить действие RI-триггера "Parent Insert-CASCADE" для того, чтобы при создании новой строки в таблице
Присвоить связи действие RI-триггера "Parent Delete-CASCADE" для того, чтобы при удалении строки из таблицы
ERwin автоматически присваивает каждой связи значение ссылочной целостности, устанавливаемой по умолчанию, прежде чем добавить ее в диаграмму. Режимы RI, присваиваемые ERwin по умолчанию (приведены в табл. 2.4), могут быть изменены в редакторе Referential Integrity Default, который вызывается, если щелкнуть по кнопке RI Defaults диалога Target Server (меню Server/Target Server).
Child Delete Возможные режимы | RESTRICT, CASCADE, NONE | RESTRICT, CASCADE, NONE, SET NULL, SET DEFAULT | RESTRICT, CASCADE, NONE, SET DEFAULT | RESTRICT, CASCADE, |
NONE | ||||
Child Delete Режимы по умолчанию | NONE | NONE | NONE | NONE |
Child Insert Возможные режимы | RESTRICT, CASCADE, | RESTRICT, CASCADE, NONE, SET NULL,SET DEFAULT | RESTRICT, CASCADE, NONE, SET DEFAULT | RESTRICT, CASCADE, |
NONE | NONE | |||
Child Insert Режимы по умолчанию | RESTRICT | SET NULL | RESTRICT | RESTRICT |
Child Update Возможные режимы | RESTRICT, CASCADE, NONE | RESTRICT, CASCADE, NONE, SET NULL,SET DEFAULT | RESTRICT, CASCADE, NONE, SET DEFAULT | RESTRICT, CASCADE, NONE |
Child Update Режимы по умолчанию | RESTRICT | SET NULL | RESTRICT | RESTRICT |
Parent Delete Возможные режимы | RESTRICT, CASCADE, NONE | RESTRICT, CASCADE, NONE, SET NULL,SET DEFAULT | RESTRICT, CASCADE, NONE, SET DEFAULT | RESTRICT, CASCADE, |
NONE | ||||
Parent Delete Режимы по умолчанию | RESTRICT | SET NULL | RESTRICT | CASCADE |
Parent Insert Возможные режимы | RESTRICT, CASCADE, NONE | RESTRICT, CASCADE, NONE, SET NULL,SET DEFAULT | RESTRICT, CASCADE, NONE, SET DEFAULT | RESTRICT, CASCADE, NONE |
Parent Insert Режимы по умолчанию | NONE | NONE | NONE | NONE |
Parent Update Возможные режимы | RESTRICT, CASCADE, NONE | RESTRICT, CASCADE, NONE, SET NULL,SET DEFAULT | RESTRICT, CASCADE, NONE, SET DEFAULT | RESTRICT, CASCADE, NONE |
Parent Update Режимы по умолчанию | RESTRICT | SET NULL | RESTRICT | CASCADE |