如何强制oracle执行级联删除而不删除/重新创建约束

19 sql oracle cascade

我有一个父表,它有一个引用它的dosen子表.这些子表又具有引用它们的其他子表.等等.

我需要从主父表中删除一行,将其一直向下级联.

在整个地方删除/重新创建约束以使它们"ON CASCADE DELETE"不是一个选项

仔细检查所有这些并手动删除子行是一场噩梦.

还有其他选择吗?

Gol*_*rol 27

DELETE语句没有参数使其级联.

因此,您可以使用户ON CASCADE DELETE或者只是以正确的顺序执行一堆单独的删除操作.

您可以编写一个"智能删除"程序来调查表结构并生成一系列删除基础,但这可能比编写单独的删除更多的工作和更多的噩梦.而且你必须要有这些限制,这实际上并不总是需要.