如何使外键更新基于父
我有两个表,我已经在我的第一个表的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