DBAtlas · Атлас эксплуатации баз данных

ORA-02449: На уникальные/первичные ключи таблицы ссылаются внешние ключи

Oracle

Что это значит?

На первичный или уникальный ключ таблицы, которую вы хотите удалить, ссылаются внешние ключи других таблиц. Oracle не позволяет удалить таблицу, не устранив сначала эти зависимости.

Почему возникает?

Вы выполнили DROP TABLE без CASCADE CONSTRAINTS, хотя другие таблицы ссылаются на эту таблицу через FK. Обеспечивая ссылочную целостность, Oracle предотвращает появление «осиротевших» внешних ключей.

Как исправить

Чтобы удалить таблицу вместе с зависимыми внешними ключами: DROP TABLE table_name CASCADE CONSTRAINTS; Это также удаляет связанные ограничения FK в других таблицах (данные в этих таблицах не удаляются). Чтобы увидеть, какие ограничения от неё зависят: SELECT table_name, constraint_name FROM all_constraints WHERE r_constraint_name IN (SELECT constraint_name FROM user_constraints WHERE table_name = 'TABLE_NAME');

Открыть в DBAtlas →

Ещё по этой СУБД