Sobes.tech
Junior — Middle

Какво е стандартното поведение на базата данни Oracle при изтриване на ред, който е свързан с друг чрез външен ключ?

sobes.tech AI

Отговор от AI

По умолчанию в Oracle при попытке удалить строку, на которую ссылается внешний ключ в другой таблице, возникает ошибка ограничения целостности (ORA-02292). Это происходит потому, что внешние ключи по умолчанию настроены с поведением RESTRICT, то есть запрещают удаление родительской записи, если существуют связанные дочерние записи.

Чтобы изменить это поведение, можно использовать опции ON DELETE CASCADE (удалять связанные записи автоматически) или ON DELETE SET NULL (устанавливать внешние ключи в NULL), но по умолчанию таких опций нет.