0
我有一個複製表:的Oracle SQL ORA-02291母密鑰未發現
CREATE TABLE d_clients_copy As SELECT * FROM d_clients;
只有數據結構和值被複制,約束不。
所以我加入主鍵到新創建的數據庫:
ALTER TABLE d_clients_copy
add CONSTRAINT client_number_pk
PRIMARY KEY (client_number);
現在我在新創建的表的主鍵列。
我有一個事件表,我試圖從c_clients_copy表中引用client_number。
ALTER TABLE d_events_copy
add CONSTRAINT client_number_fk
FOREIGN KEY (client_number)
REFERENCES d_clients_copy (client_number);
和Oracle提供了以下錯誤:
ORA-02298: cannot validate ... - parent keys not found.
哪一個是父?我感到很困惑。
注意:每個表格都包含數據。
中''的列client_number'表d_events_copy'包含''d_clients_copy'的client_number'列不存在這些值表。這就是爲什麼這個錯誤。 – Noel
@Noel表'd_events_copy'是使用'SELECT * FROM d_clients'創建的,沒有where子句,所以我認爲有相同的數據。 – Parado
我不知道表中有什麼數據。但是,錯誤肯定是由於子表中的數據不在父表中。讓OP檢查數據。 '從d_events_copy中選擇client_number,其中client_number不在(從d_clients_copy中選擇client_number)' – Noel