簡體   English   中英

innodb和外鍵-外鍵約束失敗

[英]innodb and foreign keys - foreign key constraint fails

我正在玩一個復制的數據庫,該數據庫已切換到innodb以了解外鍵。 我有下面的表格及其下面的列。 在每個fk上,我都設置ON DELETE:級聯和ON UPDATE:級聯。 這一直有效,直到我到達“低級”表:

ALTER TABLE lowlevel添加外鍵( user_id )參考testdb usersuser_id )ON DECATE CASCADE ON UPDATE CASCADE;

1452-無法添加或更新子行:外鍵約束失敗( testdb

'#sql-11e6_47710b'>,CONSTRAINT #sql-11e6_47710b_ibfk_1 FOREIGN KEY( user_id )參考usersuser_id )ON刪除級聯ON)


我的想法是/是否應該從一個帳戶中刪除一個帳戶,該accounts將在其computer_id的循環,其user_id的循環中循環,然后最終在其低級行中循環,因此只需一次調用即可刪除整個用戶帳戶。 另一方面,如果未設置先前的約束,它將向后工作並阻止通過此鏈的任何插入。

我沒有對此進行任何查詢...只是想立即通過phpmyadmin設置fk。 我的邏輯錯在哪里?為什么不能在“低級”表示例中設置fk?

我的桌子:

帳目
---------
account_id(主要)

電腦
---------
computer_id(主要)
account_id(fk到accounts.account_id)

使用者
---------
user_id(主要)
computer_id(從fk到computers.computer_id)

低級
---------
id(主要)
user_id(fk到users.user_id)

我在“低級”表中已經有一行用戶不存在。 現在有意義,因為這是執行此操作的目的之一。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM