Mysql字段int的value为0时产生的bug

Posted 秋夜雨巷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mysql字段int的value为0时产生的bug相关的知识,希望对你有一定的参考价值。

查询

userId 在数据库中为int类型

select * from userinfo where userId = 0

等于

select * from userinfo where userId = ‘‘

容易出现bug

当id为int类型,根据id批量(逻辑)删除记录时。

update userinfo set isdel = 1 where userId in(‘‘)

这里尽管没有删除,但是空字符串会被当成0来执行。会把id为0的删除掉。

解决办法就是当id不存在时不执行此语句。 

以上是关于Mysql字段int的value为0时产生的bug的主要内容,如果未能解决你的问题,请参考以下文章

Integer和int踩过的坑

mysql自动补零语句

PHPRAP 1.0.2 发布,修复安装失败 Bug 和优化细节

mysql表增加外键 字段

从多个表中加入 mysql 4.0 数据的最快方法?

MySQL索引使用:字段为varchar类型时,条件要使用''包起来