С сожалением узнал о том, что Oracle не поддерживает UPDATE CASCADE при создании внешних ключей.
Создаем две тестовых таблицы (триггер пока не создаем):
SQL запрос
Вставляем в таблицы тестовые данные (одна запись не вставляется - работает механизм обеспечения ссылочной целостности)
SQL запрос
Смотрим что получилось в таблицах:
SQL запрос
Пытаемся одну запись удалить, а другую изменить. Удаление проходит (и каскадно должна удалиться запись во второй таблице), а обновление не проходит, так как у нас нет каскадного обновления
SQL запрос
Создаем триггер, делаем обновление и оно выполняется:
SQL запрос
Таким способом можно организовать каскадное обновление в Oracle.
Последнее изменение: Четверг, 14 Июль 2011, 18:47