数据库表user, 存在一个name字段,字段为varchar类型
现在user表有这么两条记录:
id | name | age | class |
---|
1 | NULL | 18 | 一班 |
2 | lisi | 20 | 二班 |
假如我根据下面这一条件去更新,更新成功数据行显示为0
update user set age = 19 where age = 18 and class = “一班” and name != “liuwu”
原因: NULL != 任意值 的结果都为 NULL, 如果是为NULL, 那么mysql则认为该条件
结果为false
解决办法:
- 将name字段的默认值改为空串""
- 换一个判断条件