代码改变世界

关于progame反驳字段是否应该不为空的论点

  灵感之源  阅读(1109)  评论(0编辑  收藏  举报

http://www.cnblogs.com/progame/archive/2004/06/27/19062.aspx中,progame同志指出了其不认同我的观点(http://www.cnblogs.com/unruledboy/archive/2004/06/27/18988.aspx)的论据。虽然寒枫天伤做了简单的声明(http://www.cnblogs.com/William_Fire/archive/2004/06/28/19072.aspx),但我是“始作俑者”,我觉得我有必要再澄清一下:


是的,存在即理由,任何东西都应从多方面看,优点和缺点并存,这是常见的现象。数据库设计中,数据完整性是应该遵守的,不是每个字段都能不允许为空,我所坚持的是:可以不允许为空的,就不允许为空,因为我们除了要做到数据完整性,还要考虑代码的简便性。

VB6中的确能这样处理Null,但为什么要这样做呢?为什么不直接在数据库中处理完,在代码层面不就省了这个似乎有点难以理解的代码?虽然我用了7年多的VB,但我仍然不会这样处理Null,因为这样操作有点武断,而且大部分情况是冗余的。

我看见大家给出自己的实际情况,不少网友这么多年都“允许为空”,一些朋友坚决“不允许为空”,到目前都仍然这样存在着,程序照样运行着。因为,没有东西需要全盘否定,不好的东西我们也能从中学习到东西。我欢迎大家的讨论,纯粹为了跟大家交流,共促;)

编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示