Mapper.xml sql 语句类型比较

mapper.xml sql与我们的java语法有些相同,当进行动态语句if查询时,我们需要注意字段类型。

<update id="update" parameterType="com.itheima.reggie.entity.Employee">
update employee
<set>
<if test="name != null and name != ''">
name = #{name},
</if>
<if test="username != null and username != ''">
username = #{username},
</if>
<if test="password != null and password != ''">
password = #{password},
</if>
<if test="phone != null and phone != ''">
phone = #{phone},
</if>
<if test="sex != null and sex != ''">
sex = #{sex},
</if>
<if test="idNumber != null and idNumber != ''">
id_number = #{idNumber},
</if>
<if test="status != null status !='' ">
status = #{status},
</if>
<if test="createTime != null createTime !=''">
create_time = #{createTime},
</if>
<if test="updateTime != null updateTime !=''">
update_time = #{updateTime},
</if>
<if test="updateUser != null ">
update_user = #{updateUser}
</if>
</set>
where id = #{id}
</update>
</mapper>

以上sql动态更改语句看似没有问题,进行了字段非空的判断.但是数据类型不同那么我们的if语句也应该不同,非字符类型不应该使用xxxx != '';

这会引起数据类型转换的异常。因此数据不会显示和存储

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值