软删除一般用什么类型的字段?这些中的任何一个,还有其他的吗?
bool IsDeleted // nice because the default value is 0 (no) just in case
date DateDeleted // is this a common one?
date DateCreated // more of a temporal db aspect
date DateModified // same with respect to created
我问的原因是,在使用软删除时,仍必须实施级联以保持完整性。然而,真正的诀窍不是级联删除,这很容易。
The trick is cascade restoring
. 在级联删除中,使用软删除方案,关系图中的所有记录都被标记为已删除、非活动,无论标志是什么,也许不同之处在于将 datedeleted 更改为 null 值。在级联恢复时,必须评估记录引用以查看它们被删除的原因是否是与正在恢复、重新激活、取消删除的记录相关的级联删除的结果。
如何处理存储数据的级联恢复操作?