【发布时间】:2016-05-05 09:57:35
【问题描述】:
我确实有一个 sql 表,其中表 B 与表 A id 具有一对多的外键关系。如果表 A 相对父记录被删除,我不希望表 B 记录被删除。我在删除和更新时尝试了 CASCADE 和 NO ACTION,但除了删除外键约束之外,没有任何解决方案。有没有另一种方法可以在不消除约束的情况下解决?
【问题讨论】:
标签: sql database foreign-keys
我确实有一个 sql 表,其中表 B 与表 A id 具有一对多的外键关系。如果表 A 相对父记录被删除,我不希望表 B 记录被删除。我在删除和更新时尝试了 CASCADE 和 NO ACTION,但除了删除外键约束之外,没有任何解决方案。有没有另一种方法可以在不消除约束的情况下解决?
【问题讨论】:
标签: sql database foreign-keys
我没有听说有任何方法可以有外键约束并在子表从父表中删除后将记录保留在子表中。这就是为什么它叫约束,它是一条不能被打破的规则。
我可以建议另一件事,而不是删除记录,使其不可用。添加日期字段或指示字段,这将告诉您此记录有问题。
【讨论】: