栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

MyBatis一口气执行多个sql语句,这可能吗?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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语句之间的分号!



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/452931.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号