软删除和删除

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Xumuyang_/article/details/85265027

背景

最近学习MVC的时候,遇到了一个词“软删除”,然后就学习了一下。

什么是 “软删除” ?

软删除 又叫 逻辑删除标记删除。与我们常说的删除不一样,并不是真正从数据库中将该条记录删除,而是会设置一个字段,比如:IsDelete 来标记删除状态。

为什么有 “软删除” ?

其实,在实际情况中,很多时候我们说的“删除”并不是真的“删除”,比如;

1、购物车的订单不是被删除的,而是被“取消”的;
2、公司的员工不是被删除的,而是被“解雇”的(也可能是退休了~~);
3、员工的职位不是被删除的,而是被“填补”的(或者是招聘申请被撤回~)
4、等等

所以,这些时候,我们并不能真的把记录删除,所以“软删除”就出现了。

当然,我们更希望用一个表示状态的词来代替:IsDelete ,就比如我们见过的:有效、停用、弃用 等等。

软删除 VS 硬删除

虽然软删除比较好,他能保证数据的完整性,但并不代表我们任何时候都使用软删除
当我们确定某些数据确实不再需要的时候,就用到了硬删除
比如验证码,这种数据删除后就没有保存的必要啦。

总结

我们要,根据实际情况,合理使用软删除和硬删除。

猜你喜欢

转载自blog.csdn.net/Xumuyang_/article/details/85265027