On Update Cascade不更改外键值

时间:2017-04-03 14:24:11

标签: mysql

我有两张桌子:

'bin'和'missbin',错过的bin包含一个外键或bin中的primay键'binID'。我已将外键设置为在更新和级别上级联删除。

但是,当一个值插入bin时,外键不会在missingbin表中更新并保持为null。我做错了什么吗?

编辑: missbin table:

missedbin bin table:

bin

我有两个在asp:

中运行的插入语句

cmd.CommandText = "insert into mydb1.bin values(null,'" + binType + "','" + binColour + "','" + personIDdata + "')";

cmd.CommandText = "insert into mydb1.missedbin values (null, '" + personIDdata + "','" + dateFound + "', null)";

1 个答案:

答案 0 :(得分:1)

外键不起作用。插入到missBin(总是)时,您必须提供正确的binID。您可以使用LAST_INSERT_ID()。只有你以后更改bin.binID,missBin中的binID也会改变

INSERT INTO bin () VALUES () ...
INSERT INTO missedbin (binID, ...) VALUES (LAST_INSERT_ID(), ...)