С сожалением узнал о том, что Oracle не поддерживает UPDATE CASCADE при создании внешних ключей.
Создаем две тестовых таблицы (триггер пока не создаем):

Вставляем в таблицы тестовые данные (одна запись не вставляется - работает механизм обеспечения ссылочной целостности)

Смотрим что получилось в таблицах:

Пытаемся одну запись удалить, а другую изменить. Удаление проходит (и каскадно должна удалиться запись во второй таблице), а обновление не проходит, так как у нас нет каскадного обновления

Создаем триггер, делаем обновление и оно выполняется:

Таким способом можно организовать каскадное обновление в Oracle.
Создаем две тестовых таблицы (триггер пока не создаем):

Вставляем в таблицы тестовые данные (одна запись не вставляется - работает механизм обеспечения ссылочной целостности)

Смотрим что получилось в таблицах:

Пытаемся одну запись удалить, а другую изменить. Удаление проходит (и каскадно должна удалиться запись во второй таблице), а обновление не проходит, так как у нас нет каскадного обновления

Создаем триггер, делаем обновление и оно выполняется:

Таким способом можно организовать каскадное обновление в Oracle.
Last modified: Thursday, 14 July 2011, 6:47 PM