一 逻辑删除
逻辑删除不是真正意义上的删除,而是逻辑意义上的删除。通常的实现方式是在数据表中添加一个字段,比如on_off(开关)。
- 当on_off为0时:表示数据“关”,即“已删除”;
- 当on_off为1时:表示数据“开”,即“未删除”。
二 物理删除
物理删除是真正物理地址上的删除,是将数据从数据库中移除的操作,也就是删除的一般意义。
三 差别
数据被逻辑删除后在数据库中依然是存在的,是可以(容易)被恢复的。
数据被物理删除后在数据库中就不在存在了,是无法(难以)被恢复的。
四 所用场景
逻辑删除:数据的失效属于状态的改变,比如订单作废,用户禁用,员工离职,文稿废弃,优惠券作废等。
物理删除:数据不再有实际的意义。