当前位置:Gxlcms > 数据库问题 > mybatis动态SQL的<set>条件

mybatis动态SQL的<set>条件

时间:2021-07-01 10:21:17 帮助过:2人阅读

<set> <if test="pid !=null and pid !=‘‘"> PID=#{pid,jdbcType=VARCHAR}, </if> <if test="pname !=null and pname !=‘‘"> PNAME=#{pname,jdbcType=VARCHAR}, </if> </set> ......

每句<if>中的语句尾部都有一个逗号,<set>在进行生成语句时进行判断,当是满足条件的语句生成后,

如果最后一个为逗号,将逗号忽略。

PNAME=#{pname,jdbcType=VARCHAR},其中jdbcType属性指定类型,

如果不指定,很多情况会不识别,报错,比如传null(此处定义了!=null,但其它谁知道会有什么情况呢,还是加上好)。

可是又有个问题,一般取整形用#{},可是此处是字符,为什么不用${}呢?

公司小员工,因涉及修改内容,心里有点尴尬,等以后再测试看看,感觉应该是可以的(感觉更好)。

mybatis动态SQL的<set>条件

标签:

人气教程排行