与实际或物理删除记录相比,对记录进行逻辑/软删除(即设置一个标志,说明已删除记录)有什么好处?这是惯例吗?这样安全吗?
3 回答
12345678_0001
TA贡献1802条经验 获得超5个赞
优点是您可以保留历史记录(便于审核),而不必担心通过引用数据库中要删除的行的各种其他表来级联删除操作。缺点是您必须对任何报告/显示方法进行编码以考虑该标记。
至于这是一种常见的做法-我会说是的,但是对于任何情况,是否使用它取决于您的业务需求。
编辑:想到另一种缺点-如果表上有唯一索引,则删除的记录仍将占用“一个”记录,因此您也必须围绕这种可能性进行编码(例如,具有唯一索引的User表用户名;已删除的记录仍会阻止新记录的已删除用户的用户名。要解决此问题,您可以在GUID上添加已删除的用户名列,但这是我不建议使用的非常棘手的解决方法,在这种情况下,可能会最好有一个规则,一旦使用了用户名,就永远不能替换它。)
添加回答
举报
0/150
提交
取消