Mybatis XML中定义数字类型时,为何不能使用!=''来表示非空?
- 内容介绍
- 文章标签
- 相关推荐
本文共计455个文字,预计阅读时间需要2分钟。
前言+最近项目更新数据时,发现数字类型字段设置为零时,不能正常更新数据库。我们打印了mybatis的SQL日志,发现字段为零的SQL语句没有拼接完整。+示例+下面的例子是错误的+示例+下面是update id=update
前言
最近项目内更新数据时,发现数字类型字段设置为0时不能正常的更新进数据库,我们打印了下mybatis的sql日志发现字段为0的sql没有被拼接。
样例
下面的是错误示例 ❌
<update id="update" parameterType="com.chengfengfeng.test.domain.People"> update people set <if test="age!=null and age !=''"> age=#{age}, </if>, modified = sysdate() where user_id = #{userId} </update>
age是个int类型的数据,我们在写age判断的时候就增加上了判断age!='',这个是存在问题的。
本文共计455个文字,预计阅读时间需要2分钟。
前言+最近项目更新数据时,发现数字类型字段设置为零时,不能正常更新数据库。我们打印了mybatis的SQL日志,发现字段为零的SQL语句没有拼接完整。+示例+下面的例子是错误的+示例+下面是update id=update
前言
最近项目内更新数据时,发现数字类型字段设置为0时不能正常的更新进数据库,我们打印了下mybatis的sql日志发现字段为0的sql没有被拼接。
样例
下面的是错误示例 ❌
<update id="update" parameterType="com.chengfengfeng.test.domain.People"> update people set <if test="age!=null and age !=''"> age=#{age}, </if>, modified = sysdate() where user_id = #{userId} </update>
age是个int类型的数据,我们在写age判断的时候就增加上了判断age!='',这个是存在问题的。

