Встречается на собеседованиях • сегодня

Какое значение устанавливается по умолчанию при удалении записи, связанной через внешний ключ в Oracle Database

В Oracle Database по умолчанию при удалении записи, связанной через внешний ключ, устанавливается ограничение NO ACTION. Это означает, что операция удаления будет отклонена, если существуют зависимые записи в дочерней таблице.

Пример:

sql
-- Создаем таблицы с внешним ключом (по умолчанию NO ACTION)
CREATE TABLE parent_table (
    id NUMBER PRIMARY KEY
);

CREATE TABLE child_table (
    id NUMBER PRIMARY KEY,
    parent_id NUMBER REFERENCES parent_table(id)
);

Если попытаться удалить запись из parent_table, на которую ссылаются записи в child_table, возникнет ошибка ORA-02292.

Можно явно указать другие варианты:

  • ON DELETE CASCADE - каскадное удаление
  • ON DELETE SET NULL - установка NULL в поле внешнего ключа
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы