- 30
- 0
使用mybatis updateByPrimaryKeySelective方法来更新语句,但是null值也传过去了。
Mapper.xml
<update id="updateByPrimaryKeySelective">
update zzbizorder_#{tableIndex}
<set>
<if test="#{record.clickid != null}">
clickid = #{record.clickid,jdbcType=BIGINT},
</if>
<if test="#{record.xxxx != null}">
clickid = #{record.xxxx,jdbcType=BIGINT},
</if>
<if test="#{record.xxxx != null}">
clickid = #{record.xxxx,jdbcType=BIGINT},
</if>
<if test="#{record.xxxx != null}">
clickid = #{record.xxxx,jdbcType=BIGINT},
</if>
<if test="#{record.xxxx != null}">
clickid = #{record.xxxx,jdbcType=BIGINT},
</if>
</set>
Mapper.class
public interface OrderEntityMapper {
int insertSelective(@Param("tableIndex") Integer tableIndex, @Param("record") OrderEntity record);
int updateByPrimaryKeySelective(@Param("tableIndex") Integer tableIndex, @Param("record") OrderEntity record);
}
程序打印的SQL语句:
JDBC Connection [com.mysql.jdbc.JDBC4Connection@377008df] will not be managed by Spring
==> Preparing: update order_? SET clickid = ?, xxxx = ?, xxxx = ?, xxxx = ?, xxxx = ?, where id = ?
==> Parameters: 0(Integer), null, null, null, null
<== Updates: 1
clickid为null,但是也set了,请问这是什么原因呢。
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
ゾ硪鍀泪倪卟懂 普通会员 1楼
在Mybatis中,如果使用了非空判断,但是仍然没有生效,可能有以下几种情况:
-
没有正确配置好实体类的属性:在定义Java类的时候,应该在属性名上加上对应的Java数据类型,以保证在数据库中对应的属性是唯一的。例如,如果属性名为"username",则对应的Java数据类型应为"java.lang.String"。
-
在Java配置文件中没有使用
<if>标签:在Mybatis的配置文件中,应该使用<if>标签来实现非空判断。例如,如果需要判断用户名是否为空,可以添加以下代码:
xml <if test="username != null"> username cannot be null </if>- 在Java代码中没有正确执行非空判断:在Java代码中,应该正确使用
if标签,并在条件判断之后执行相应的逻辑。例如,如果需要判断用户名是否为空,可以添加以下代码:
java if (username != null) { // username is not null }- 在Mybatis的SQL语句中使用了不正确的SQL语句:在Mybatis的SQL语句中,应该使用正确的SQL语句来实现非空判断。例如,如果需要判断用户名是否为空,可以添加以下代码:
sql SELECT * FROM users WHERE username IS NOT NULL以上就是一些可能导致Mybatis非空判断没有生效的情况,希望对你有所帮助。
-
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
