ORA-02449: unique/primary keys in table referenced by foreign keys(表の一意/主キーが外部キーにより参照されている)
Oracle意味
削除しようとしているテーブルの主キーまたは一意キーが、他のテーブルの外部キーから参照されている。Oracle は、これらの依存関係を先に削除しない限りテーブルの削除を許可しない。
原因
他のテーブルが FK でこのテーブルを参照している状態で、CASCADE CONSTRAINTS なしで DROP TABLE を実行した。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');
同じデータベースの他の項目
- direct path read待機: バッファキャッシュを経由せず、セッションがブロックを直接 PGA に読み取っている
- latch: cache buffers chains待機: cache buffers chains ラッチの競合
- ORA-00955name is already used by an existing object(名前は既存のオブジェクトが使用している)
- ORA-01950no privileges on tablespace 'name'(表領域に対する権限がない)
- ORA-01110data file N: 'path'(データファイル N: 'path')
- ORA-16038log N sequence# M cannot be archived(ログ N (順序番号 M) をアーカイブできない)
- ORA-19809limit exceeded for recovery files(リカバリファイルの制限超過)