在mybatis同一个方法中执行多个SQL语句实现方法

一、oracle数据 

   
<delete id="delete" parameterType="upc.cbs.HtxxlrEntity">
begin 
  delete from PC_CBS_CONTRACT where contract_id = #{contract_id};
  delete from PC_CBS_UPLOAD_FILES where  contract_id = #{contract_id} and  filetype='合同附件';
  delete from PC_CBS_CONTRACT_TEAM where contract_id = #{contract_id};
 end;
</delete>

只需要添加begin 和 end;   每个sql语句用“;”结束

二、mysql

1、修改数据库连接参数加上allowMultiQueries=true,如:

hikariConfig.security.jdbcUrl=jdbc:mysql://xx.xx.xx:3306/xxxxx?characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=false&allowMultiQueries=true

2、直接写多条语句,用“;”隔开即可

<delete id="delete" parameterType="upc.cbs.HtxxlrEntity">
  delete from PC_CBS_CONTRACT where contract_id = #{contract_id};
  delete from PC_CBS_UPLOAD_FILES where  contract_id = #{contract_id} and  filetype='合同附件';
  delete from PC_CBS_CONTRACT_TEAM where contract_id = #{contract_id};
</delete>

mysql需要修改数据连接添加allowMultiQueries=true属性;每个sql语句用“;”分开

猜你喜欢

转载自blog.csdn.net/chp891202/article/details/85012940