我的表如下:
+----------+---------+
| ParentId | ChildId |
+----------+---------+
这是一种一对多的关系(一个父母,多个孩子(,而主要的关键是子ID,因为孩子只能映射到一个父母(到目前为止都很直接(。
我的问题现在是我想添加一个辅助列,如下所示:
+----------+---------+---------+
| ParentId | ChildId | Deleted |
+----------+---------+---------+
因此,出于审计原因,我需要保持跟踪,删除父母的映射,我的想法是使子ID与删除,是错误的。问题是我该如何实现?是否有可能或者应该创建一个我用来存档已删除条目的辅助表,任何其他建议我如何实现此方法或可以采用的另一种方法?
我认为这是您的问题:
我的想法是如果删除的删除是错误的。 问题是我该如何实现?
如果是这样,您可以使用过滤的唯一索引:
create unique index unq_t_parent_child on t(parent, child)
where isdeleted = 0;