使用场景
有个常见的场景:删除用户的时候需要先删除用户的外键关联数据,否则会触发规则报错。
解决办法不外乎有三个:
- 多条sql分批执行
- 存储过程或函数调用
- sql 批量执行
MyBatis 执行多条 SQL 语句
MyBatis 中如何一次执行多条 SQL 语句
1、修改数据库连接参数加上 allowMultiQueries=true,如:
<!--设置数据库 URL 地址-->
<property name="url" value="jdbc:mysql://localhost:3306/binge?characterEncoding=utf8&serverTimezone=UTC&allowMultiQueries=true"/>
2、直接写多条语句,用;
分号隔开
<delete id="deleteUserById">
delete from sec_user_role where userId=#{id};
delete from sec_user where id=#{id};
</delete>