我有兩個表,我已經在我的第一個表的id列與我的第二個表的user_id列之間使用設計器的關係。在哪裏以及如何添加代碼或執行某些操作,以便在刪除父(id)時,與刪除的id相對應的user_id值也將被刪除?我試着刪除一個註冊的ID,但子表中的相應行沒有被刪除。如何使外鍵更新基於父
我已經做了一些搜索,但我仍然很困惑。
謝謝。
注意:我正在試驗MySQL和PHP,這是我正在創建的一個小博客。
我有兩個表,我已經在我的第一個表的id列與我的第二個表的user_id列之間使用設計器的關係。在哪裏以及如何添加代碼或執行某些操作,以便在刪除父(id)時,與刪除的id相對應的user_id值也將被刪除?我試着刪除一個註冊的ID,但子表中的相應行沒有被刪除。如何使外鍵更新基於父
我已經做了一些搜索,但我仍然很困惑。
謝謝。
注意:我正在試驗MySQL和PHP,這是我正在創建的一個小博客。
請將引用操作添加到外鍵約束中。
更多細節可以在這裏找到: https://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html
對於你的情況,ON DELETE CASCADE
應該罰款。
設置ID從第一臺作爲主鍵
CREATE TABLE tbl_first(ID INT PRIMARY KEY AUTO_INCREMENT,名稱VARCHAR(20))
創建你的第二個表作爲tbl_second
CREATE TABLE tbl_second(id INT PRIMARY KEY AUTO_INCREMENT,fk_id int)
添加約束這樣的:
ALTER TABLE tbl_second
附加約束fk_first
外鍵tbl_second(fk_id)
引用tbl_first上刪除級聯(ID)
似乎SQL Server和MySQL有點不同,但它應該工作,我測試它在MySQL的
想要插入tbl_second時,您應該從tbl_first中的「id」值中選擇tbl_first中的某一行,如果tbl_second中有一個子項,它也會刪除, – Ashkan 2014-12-06 20:46:33
謝謝您在tbl_first 和 中選擇值所有的幫助! :)對不起,我花了一段時間回到你身邊。 – TheActualKid 2014-12-15 21:26:49
np,劑量它的工作? – Ashkan 2014-12-23 06:17:44
凡我會使用phpMyAdmin當鍵入此? – TheActualKid 2014-12-06 06:41:02