DBAtlas · Veritabanı operasyon atlası

ORA-02449: unique/primary keys in table referenced by foreign keys

Oracle

Ne demek?

Silmek istediğiniz tablonun primary key ya da unique key'ine, başka tablolardaki foreign key'ler referans veriyor. Oracle, bu bağımlılıkları önce kaldırmadan tabloyu düşürmenize izin vermez.

Neden olur?

Başka tablolar bu tabloya FK ile bağlıyken CASCADE CONSTRAINTS eklemeden DROP TABLE çalıştırdınız. Referans bütünlüğünü koruyan Oracle, orphan foreign key oluşmasını engeller.

Nasıl çözülür?

Bağımlı foreign key'lerle birlikte silmek için: DROP TABLE tablo_adi CASCADE CONSTRAINTS; Bu, diğer tablolardaki ilgili FK constraint'lerini da kaldırır (o tablolardaki veriyi silmez). Hangi constraint'lerin bağlı olduğunu görmek için: SELECT table_name, constraint_name FROM all_constraints WHERE r_constraint_name IN (SELECT constraint_name FROM user_constraints WHERE table_name = 'TABLO_ADI');

DBAtlas'ta aç →

Aynı motorda diğer kayıtlar