不做显式删除,而用 status=0 代替,是好的实践么?

2017 年 5 月 23 日
 27

这样一来,用代码生成器生成的 sql 语句全部都不能用,都得重新写

觉得十分麻烦,大家都是这样用的吗?

6111 次点击
所在节点    问与答
26 条回复
mkeith
2017 年 5 月 23 日
一般 orm 支持软删除的吧
shiny
2017 年 5 月 23 日
BOSS:小王,把上次删除的恢复下
shiny
2017 年 5 月 23 日
记得很久以前看到过一个观点:真实世界是没有删除的。订单作废,用户禁用,员工离职,文稿废弃,优惠券作废。所以 SQL 里面 DELETE 在业务场景里都不应该出现。
U7Q5tLAex2FI0o0g
2017 年 5 月 23 日
挺好的
murmur
2017 年 5 月 23 日
如果是面试的话应该是大量删除触发索引重建,而现在数据库空间不值钱索引重建一次卡的 cpu 和 io 值钱
shoaly
2017 年 5 月 23 日
laravel 在 orm 里面 是不会查询出软删除的数据的.
提供一次后悔的机会.. 万一呢, 万一傻逼了呢
otakustay
2017 年 5 月 23 日
你只要理解数据比钱更值钱,就明白要怎么做了
F281M6Dh8DXpD1g2
2017 年 5 月 23 日
数据都删了还分析啥
ovear
2017 年 5 月 23 日
第一是安全。。第二是恩。。你懂得
CodeDrift
2017 年 5 月 23 日
很想知道 django 有没有这个软删除。。
helloworldwt
2017 年 5 月 23 日
一般都是逻辑删除,不实际删除的。在数据库里使用一个状态来表示
zyue
2017 年 5 月 23 日
我建的表都有个 is_deleted tinyint 字段
wc951
2017 年 5 月 23 日
那要看是什么数据了,也不是所有业务场景都需要留着过期数据
yghack
2017 年 5 月 23 日
生产环境不能有 DELETE 权限
zhenjiachen
2017 年 5 月 23 日
deletedAt 日期格式,这个字段好一点,你 status 不知道什么时候删除的,查询直接使用 deletedAt is not null 就好
ixo
2017 年 5 月 23 日
必要
@zhenjiachen 我一般是配合 updateAt 这个字段判断删除时间。
solee
2017 年 5 月 23 日
很好啊 我们也是配合 updatedAt 字段使用 软删除
Mogugugugu
2017 年 5 月 23 日
逻辑删除,不会无理删除的.一方面避免误操作,另一方面 数据无价,无论用来干啥...
cloverstd
2017 年 5 月 23 日
软删除,多对多联查的很麻烦啊
Ouyangan
2017 年 5 月 23 日
你改下 代码生成器

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/363226

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX