在 Oracle 中,我有一个名为 Category 的表,由三列组成:
ID = 是系统生成的唯一键,
Catgeory_name = 是 300 char 和 parent_id = 可以是 -1,这意味着该类别没有父级,也可以是前面描述为 parent_id 的 ID 列中的值。
问题是当我删除一个作为父类的类别时,我还需要自动删除所有子类。我的问题是:SQL 是否提供了自动执行此操作的任何方法,或者我应该在我的上层语言(即 C#)中处理它。
例如,如果两个表之间存在外键情况,我知道 SQL 提供 ON DELETE CASCADE 以在删除原始记录请求时删除依赖记录以及父记录。
但是,我不知道 SQL 中有什么方法可以自动处理上述情况,这意味着当在上表中删除父级时,所有子级也会被删除。
在此先感谢您的帮助。