条件是这样的 我有客户表
id_cus ---> PK name address phone
我有交易表
no_trans ---> PK id_cus ---> FK datetime payment
哪个最佳解决方案ON DELETE事务表的外键选项?
答案 0 :(得分:0)
对于ON DELETE来说,没有最好的选择。这取决于你需要它。这些是你的选择:
CASCADE:从父表中删除行,并自动删除或更新子表中的匹配行。
SET NULL:从父表中删除行,并将子表中的外键列设置为NULL。如果您指定SET NULL操作,请确保您没有将子表中的列声明为NOT NULL。
RESTRICT:拒绝父表的删除操作。 RESTRICT与省略ON DELETE子句相同。
ON DELETE的默认操作始终为“RESTRICT”。
(https://dev.mysql.com/doc/refman/5.7/en/create-table-foreign-keys.html)
希望这有帮助!