2016-06-23 64 views
2

我有2個表無法更新/刪除/截斷表的外鍵

CREATE TABLE table1 (
    id1 int(10) NOT NULL PRIMARY KEY, 
    name varchar(20) 
);  

CREATE TABLE table2 (
    newid int(10) NOT NULL PRIMARY KEY, 
    f_id int(10) 
); 

現在,我已經添加了一個外鍵約束

ALTER TABLE table2 
ADD CONSTRAINT fk_id FOREIGN KEY (f_id) REFERENCES table1 (id) 
ON DELETE CASCADE ON UPDATE CASCADE; 

現在的問題是我無法更新/刪除/截斷表'table2'。這裏有什麼確切的問題以及如何解決它?

+1

定義「不能」一條錯誤消息,可重複的場景或某事的表。 – Pred

回答

0

外鍵實施參照完整性,嘗試從表1中刪除記錄,然後表2.不能截斷其爲具有FK

+0

Table1是**引用的**表,從它刪除時不需要table2中的任何記錄引用table1中的id或正確的刪除選項。 – Pred

+0

我可以更新table2中的記錄嗎?如果不是,我應該做什麼更改以便我可以更新table2的記錄? – Hari

+0

@Hari隨着你在問題中提供的信息,我們不知道。您已經發布了一些DDL,包含語法錯誤,方案,並且沒有錯誤消息/示例數據和查詢來重現您的問題。是的,如果您不想將引用列更新爲不存在的值,您應該可以更新記錄。 – Pred