问题标签 [cascading-deletes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
168 浏览

hibernate - 包含的@OneToMany 成员的删除顺序

我对所有 @OneToMany 成员都有 @OnDelete 注释。删除父对象时,删除这些对象的顺序是什么。假设它是声明对象的顺序是否安全。

0 投票
1 回答
2011 浏览

entity-framework - 如何使用 EF4 fluent API 将删除级联到链接表中?

我在现有(MSSQL 2008 R2)数据库中有两个表,它们通过链接表相关联。

这两个表是“计划”和“提示”。链接表是“PlanTipLinks”。

计划可以有许多提示,提示可以与多个计划相关联(即它是多对多关系)。在应用程序中,我只关心“Plan.Tips”关系。我不需要 Tip.Plans 反向关系。

链接表中的外键引用不能为空。

我正在使用以下流畅的 API 代码来映射这种关系:

这将在表中创建正确的条目。问题是,当我删除计划时,PlanTipLinks 表上出现外键异常。

大概我需要告诉它在删除计划时将其级联到 PlanTipLinks 表中,但我不知道该怎么做。我似乎无法使用 HasMany/WithMany 方法调用 WillCascadeOnDelete 方法。

我在这里想念什么?

0 投票
1 回答
970 浏览

entity-framework-4 - 为什么实体框架没有正确更新 CSDL(概念模型)中的 OnDelete?

我最近更新了数据库中的一些表来使用OnDelete=Cascade,但是,当我去更新我的 edmx 文件时,Update model from database我注意到OnDelete没有正确更新。

经过一番搜索,我从http://msdn.microsoft.com/en-us/library/bb738695.aspx找到了以下“提示”

如果您使用级联删除规则更新数据库,然后从数据库中更新现有模型,实体框架会将级联删除规则添加到 SSDL 而不是 CSDL。您必须手动添加它。要在概念模型中指定级联删除规则,请在实体设计器图面上选择关联。然后,在“属性”窗口中,为 OnDelete 属性选择级联。

我的问题是为什么会这样?我更新了大约 15 个表,现在我需要去查找每个关系并在edmx文件中进行相同的更新......有没有更简单更有效的方法?

0 投票
8 回答
180946 浏览

hibernate - JPA orphanRemoval=true 与 ON DELETE CASCADE DML 子句有何不同

我对 JPA 2.0orphanRemoval属性有点困惑。

我想当我使用我的 JPA 提供者的数据库生成工具来创建底层数据库 DDL 以具有ON DELETE CASCADE特定关系时,我可以看到它是必需的。

但是,如果数据库存在并且它已经有一个ON DELETE CASCADE关系,这是否不足以适当地级联删除?除此之外还有什么作用orphanRemoval

干杯

0 投票
1 回答
211 浏览

nhibernate - 多对多和级联:实体删除问题

我有以下两个实体及其映射:

我有这两个单元测试:

第一个成功,但不是第二个的第一个 Assert,其中视频文件夹被删除,而它仍然与剩余的视频类别相关联。

这是第二个测试的 SQL 输出:

如果我更改映射并修改 VideoCategoryMap 中的 Cascade.AllDeleteOrphan,则第二次测试成功,而第一次测试失败,因为未删除孤立的视频文件夹。

我怎样才能使两个测试都成功?

提前致谢

麦克风

0 投票
1 回答
1024 浏览

grails - 不使用 domain.delete() 时 Grails 会级联删除吗?

来自 Grails 站点:http ://www.grails.org/doc/1.0.x/guide/5.%20Object%20Relational%20Mapping%20(GORM).html

然后调用delete()Airport 实例将删除所有关联的 Flight 对象(因为它们属于机场)。如果我要使用删除机场,executeUpdate我还能期望它删除航班吗?

谢谢

0 投票
3 回答
46277 浏览

sql - 如何编辑表以启用 CASCADE DELETE?

我有一个代表用户的表格。当用户被删除时,我得到:

DELETE 语句与 REFERENCE 约束冲突

显然,CASCADE DELETE在 SQL Server 中并没有我想象的那么容易,需要将选项添加到表中。

问题是:我不知道如何添加该CASCADE DELETE选项。

我正在使用:SQL Server 2008。任何想法如何做到这一点?

0 投票
2 回答
3652 浏览

sql - 没有删除级联的外键

我有两张桌子:

如果我在挑战表上有一行,challengeID = 1,在 UserChallenge 表上有一行,challengeID = 1。

如果我从挑战中删除行,UserChallenge 表会发生什么情况?我可以ON DELETE CASCADEUserChallenge.challengeID吗?

谢谢。

0 投票
3 回答
1207 浏览

mysql - 我的“ON DELETE CASCADE”不起作用

我有 3 张桌子lt_hdefaultslt_hperiodslt_hrules。在lt_hdefaults中,特定年份的属性有一行。在lt_hperiods表中,可能有多个时期,称它们为季节。在lt_hrules表格中,每个时期可能有多个规则。现在,我无法完成的工作:当用户从 中删除记录时lt_hdefaults,应从表中删除与已删除记录相关的其他lt_hperiods数据lt_hrules。我试图通过使用来实现这一点

但是,它不起作用。我知道它看起来很长,但它不是很复杂。如果有人有任何想法,我将不胜感激。我知道如何使用 mysql,但我不是这方面的专家。非常感谢。

以下示例:

0 投票
1 回答
11501 浏览

hibernate - 使用 @ManyToMany 注释从连接表中级联删除

嗨,我在映射我的实体时遇到了问题。我正在使用 JPA2 和 Hibernate 实现。我得到了带有@ManyToMany 注释的表格

http://img204.imageshack.us/img204/7558/przykladd.png

我将其映射为:

现在,当我从 Employee 中删除记录时,我想从表 proj_emp 中级联删除,但表 Project 中的任何内容都不能删除。

获得它的最佳方法是什么?

谢谢大卫