mybatis 带分号批量sql_MyBatis一口气执行多个sql语句,这可能吗?

小编典典

是的,大多数数据库都允许这样做。通常,您必须使用一些东西来分隔SQL语句。在PostGRES和MySQL中,它是一个分号(;)。在Microsoft SQL

Server中,应使用关键字GO。[2013年5月更新:自SQL Server 2012起,您可以并且应该使用分号分隔语句。在SQL Server

2012之后(即下一版本和更高版本),这些将是必需的。现在,在SQL2012及更高版本中,现在不建议使用GO。]

MySQL / PostGRES示例:

DELETE FROM DUMMYTABLE_A where X=${value};

DELETE FROM DUMMYTABLE_B where X=${value};

DELETE FROM DUMMYTABLE_C where X=${value};

MS-SQL示例:

DELETE FROM DUMMYTABLE_A where X=${value}

GO

DELETE FROM DUMMYTABLE_B where X=${value}

GO

DELETE FROM DUMMYTABLE_C where X=${value}

更好的数据库(即不是MySQL)也将支持使用BEGIN TRAN / COMMIT TRAN / ROLLBACK

TRAN的事务。使用事务,您实际上可以将所有语句批处理到一个原子操作中,如果其中一部分失败,则将所有三个语句回滚。有关这些方面的更多信息,请参见http://www.sqlteam.com/article/introduction-

to-transactions。

不过,您最可能需要的只是SQL语句之间的分号!

2020-09-24

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值