ON DELETE级联支持
本文关键字:支持 级联 DELETE ON | 更新日期: 2023-09-27 18:20:15
正如标题所说,我正试图使用实体框架、MySQL和CodeFirst删除一个对象。
我的目标中有很多对很多的关系,我只删除了一个约定:
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
在我的背景下。但我在尝试删除时仍然会得到这个:
Cannot delete or update a parent row: a foreign key constraint fails (`db`.`jagtartjagtrejse`, CONSTRAINT `JagtArt_JagtRejser_Target` FOREIGN KEY (`JagtRejse_JagtRejseID`) REFERENCES `jagtrejse` (`JagtRejseID`))
mysql连接器中是否不支持删除级联,或者有什么问题?
https://stackoverflow.com/a/5532950/965013
我相信这回答了你的问题。该链接显示了如何在删除时禁用级联,但正如您所看到的,打开它只是调用的问题
modelBuilder.Entity<...>()
.HasRequired(...)
.WithMany(...)
.HasForeignKey(...)
.WillCascadeOnDelete(true);
通过在EF迁移文件中强制cascadeDelete: true
,我得到了相同的结果。
ON DELETE
被设置为RESTRICT
,而它应该是CASCADE
我必须手动更改FK
才能使其工作。
编辑:Mysql Bug跟踪器上的Bug文件。