小心陷阱!MySQL中处理Null时需注意两点
MySQL数据库是一个基于结构化数据的开源数据库。不过在MySQL数据库中执行SQL语句,需要小心两个陷阱。此时为出现什么情况呢(如下图)?我先创建了一个表。在这个表中有两个字段:User_id、Date。在操作时,明明插入的是一个空值的数据,但是最后查询得到的却不是一个空值。在MySQL数据库中,NULL对于一些特殊类型的列来说,其代表了一种特殊的含义,而不仅仅是一个空值。一个就是笔者上面举的TimesTamp数据类型。如果往这个数据类型的列中插入Null值,则其代表的就是系统的当前时间。另外一个是具有auto_increment属性的列。显然其显示的结果是不相同的。在实际工作中,空值数据与空字符往往表示不同的含义。如对于电话号码等字段,可以默认设置为空值或者设置为空字符等等。
用户评论