mybatis update set 多个字段
<update id="updateCustomer" parameterType="com.entrym.domain.Customer">
UPDATE customer set
<if test="name!=null">name=#{name,jdbcType=VARCHAR},</if>
<if test="role!=null">role=#{role,jdbcType=VARCHAR},</if>
<if test="userId != null">user_id = #{userId,jdbcType=INTEGER},</if>
<if test="qq != null">qq = #{qq,jdbcType=VARCHAR},</if>
<if test="mobile != null">mobile = #{mobile,jdbcType=VARCHAR}</if>
WHERE id =#{id,jdbcType=BIGINT}
如果上面的mobile字段为null,执行下面的SQL语句
UPDATE customer set name=?,role=?,userId=?,qq=?, where id=?
where 前面有逗号“,”就会报错
使用trim可以删掉最后字段的逗号“,”
set已被包含在trim中,所以不用重复写了:
<update id="updateCustomer" parameterType="com.entrym.domain.Customer">
UPDATE customer
<trim prefix="set" suffixOverrides=",">
<if test="claimTime!=null">claim_time=#{claimTime,jdbcType=VARCHAR},</if>
<if test="claimState!=null">claim_state=#{claimState,jdbcType=INTEGER},</if>
<if test="name!=null">name=#{name,jdbcType=VARCHAR},</if>
<if test="role!=null">role=#{role,jdbcType=VARCHAR},</if>
<if test="platformAccount!=null">platform_account=#{platformAccount,jdbcType=VARCHAR},</if>
<if test="collaborateTime!=null">collaborate_time=#{collaborateTime,jdbcType=VARCHAR},</if>
<if test="collaborateState!=null">collaborate_state=#{collaborateState,jdbcType=INTEGER},</if>
<if test="userId != null">user_id = #{userId,jdbcType=INTEGER},</if>
<if test="qq != null">qq = #{qq,jdbcType=VARCHAR},</if>
<if test="mobile != null">mobile = #{mobile,jdbcType=VARCHAR}</if>
</trim>
WHERE id =#{id,jdbcType=BIGINT}
</update>
转义字符:
< 小于号 <
> 大于号 >
& 和 &
' 单引号 ’
" 双引号 "
-------------------------------------充足的睡眠、均衡饮食和适当的运动是健康生活的三个鼎足----------------------------------------
mybatis update set 多个字段的更多相关文章
- Mybatis Update statement Date null
Mybatis Update statement Date null 只要在Model里把字段置为java的null即可.
- update更新两个字段
update更新两个字段时的sql语句: update tj_record set is_recycle_reprint_guide='1' , recycle__guide_date=now() w ...
- 【转】MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突
[转]MyBatis学习总结(四)——解决字段名与实体类属性名不相同的冲突 在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定都是完全相同的,下面来演示一下这种情况下的如何解决字段名与实体 ...
- mybatis操作动态表+动态字段+存储过程
存储过程 statementType="CALLABLE" <!-- 计算金额存储过程--> <update id="getCalcDistributo ...
- 修改mybatis plus Generator模板生成字段注释枚举常量
修改mybatis plus Generator模板生成字段注释枚举常量 本文基于最新的mybatis-plus 3.0.1版本源码修改,如果使用其它版本,处理方式也类似,主要是生成Entity的Fr ...
- 2.mybatis 的列名与数据库字段不对应
mybatis 的列名与数据库字段不对应 1.别名 映射文件 : BlogMapper.xml <mapper namespace="com.xms.mybatis.mapper.Bl ...
- 使用SQL中的update更新多个字段值
使用SQL中的update更新多个字段值,set后面的条件要用逗号不能用and set后面的多个条件之间没有关联也不可以有关联,所以就不能用and了:where 条件后面 可以为and 如: upda ...
- 【mybatis】 mybatis在mysql 更新update 操作 更新时间字段按照年月日时分秒格式 更新为当前时间
示例代码如下: update goods_msg SET create_date = DATE_FORMAT(NOW(),'%Y-%m-%d %H:%m:%s') WHERE uid = '6183b ...
- Mybatis框架学习总结-解决字段名与实体类属性名不相同的冲突
在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定是完全相同的. 1.准备演示需要使用的表和数据 CREATE TABLE orders( order_id INT PRIMARY KEY ...
随机推荐
- 设计模式课程 设计模式精讲 14-2 组合模式coding
1 代码演练 1.1 代码演练1(组合模式1) 1.2 代码演练2(组合模式1之完善) 1 代码演练 1.1 代码演练1(组合模式1) 需求: 打印出木木网的课程结构, 我们用一个组建类作为接口,课程 ...
- redis之五大数据类型介绍
目录 redis五大数据类型 1. string(字符串) 特点: 格式: 基本操作: 2. hash(哈希) 特点: 格式: 基本操作 3. list(列表) 特点 格式 基本操作 4. set(集 ...
- Django(二十)分页:
一.知识点 参考:https://docs.djangoproject.com/zh-hans/3.0/topics/pagination/ 查询出所有省级地区的信息,显示在页面上. AeroInfo ...
- webView之可加载JavaScript
有两个方法 方法一: 首先就是在xml文件中添加webview标签很简单不用说明 初始化控件 private WebView wv= (WebView) findViewById(R.id.wv); ...
- 【转载】C#常用控件属性及方法介绍
C#常用控件属性及方法介绍 目录 1.窗体(Form) 2.Label (标签)控件 3.TextBox(文 ...
- css 图形样式
参考:https://css-tricks.com/examples/ShapesOfCSS/
- kd-tree理论以及在PCL 中的代码的实现(转载)
该文转自:https://www.cnblogs.com/li-yao7758258/p/6437440.html kd-tree理论以及在PCL 中的代码的实现 (小技巧记录:博客园编辑的网页界 ...
- 构建javascript array包
//像一个数组添加数组. copyArray = function(inSrcArray,inDestArray){ var i; for(i=0;i<inSrcArray.length;i++ ...
- mysql安装到最后一步无响应的问题超简单最有效解决
mysql安装到最后一步无响应的问题超简单最有效解决 无论你是安装过还是没安装过,通过此方法都可以解决.之前我的机器和服务器就是都到最后一步卡住,上网搜索方法都无果.后自己尝试了很多次,亲测64位机和 ...
- 如何使用IDEA将maven项目打成war包
1.点击IDEA界面右边的maven project 2.双击package