我有一个与父表(TableA)有外键关系的表(TableB)。
当我删除表 A 中的记录时,我想通过删除表 B 中引用表 A 中已删除记录的所有记录来保持引用完整性。
通常我会删除级联。但是,由于 SQL Server 中的表结构和针对多个级联路径的过度保护措施,对于这种特定关系来说这是不可能的。
我也不能使用 INSTEAD OF 触发器,因为 TableA 本身具有 CASCADE 外键关系。
我正在考虑将 TableA 和 TableB 之间的关系更改为 ON DELETE SET NULL,然后创建一个 AFTER 触发器来清理 TableB 中的 NULL 记录。
有没有更好的方法来处理这种情况?