在数据库设计中字段尽量不要默认允许为NULL,因为NUll这个值太特殊了,最近在一个项目中再次掉如这个坑中。
简单描述一下我们遇到的问题:
数据表A的字段a类型为varchar,默认允许NULL,然后在程序中有一个业务需求的SQL语句是这个 SELECT * FROM A WHERE a != 'something' ,
原本期待的是这个SQL语句会按照我们期望的结果执行,查询出所有a不等于something的执行,然后实际上并不是如此。该SQL语句只查询出了a不能与NULL且不等于something的数据。后来查询才明白,因为NULL和任何其他值比较都是FALSE
数据库设计中NULL的坑
最新推荐文章于 2025-08-19 19:09:04 发布
本文通过一个实际案例,探讨了在数据库设计中字段设置为允许NULL可能导致的问题。特别地,当进行不等于某值的查询时,NULL值不会被正确排除,从而影响查询结果的有效性。
768

被折叠的 条评论
为什么被折叠?



