springboot+Mybatis+MySql 一个update标签中执行多条update sql语句


MySql默认是不支持这种骚操作的,但是并不代表不能实现,只需要在jdbc的配置文件中稍做配置:

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://127.0.0.1:3306/airipo?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&allowMultiQueries=true
username=imp
password=123

其中,allowMultiQueries=true这个配置是关键,必须写

然后在映射文件中的标签下将多条sql用;隔开即可,示例代码:

<insert id="addUser" parameterType="User" >
      insert into t_users (name,password,phone) values (#{name}, #{password},#{phone});
      insert into t_dep (depname) values (#{depname})
 </insert>

<update id="updateBatchSingle" parameterType="java.util.List">
<foreach collection="list" item="item" index="index" open="" close=";" separator=";">
update user
<set>
status=#{item.status}
</set>
where id = #{item.id}
</foreach>
</update>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM