【发布时间】:2017-06-12 05:12:29
【问题描述】:
我在 SQL 数据库中有两个表,其字段如下:
Table A: Key | Id1 | Name
Table B: Key | Id2 | Idx1 | Idx2 | Id1
表 B 存储分层数据。表 B 中的字段 Id1 链接回表 A 中的 Id1,并设置了 FK,以便删除表 1 中的项目(例如 Id1=1)将删除表 B 中的所有项目(具有相同的 Id1)(即。级联)。
我想要做的是,对于表 B 中使用某个 Id1 删除的记录(由于表 A 中具有相同 Id1 的记录),表 B 中具有相同 Id2 的所有记录也被删除了。
例如...
Table A:
1,1,A
2,2,B
3,3,C
Table B:
1,1,0,0,1
2,1,0,1,2
3,1,0,2,3
4,1,1,0,3
5,1,1,1,2
6,2,0,0,3
我现在从表 A 中删除第 1 项(Id1=1),这样:
Table A:
2,2,B
3,3,C
Table B:
6,2,0,0,3
这可以在 SQL 中自动完成(例如,通过触发器等),还是我需要在数据库之外“手动”处理?
【问题讨论】: