开发者社区> 问答> 正文

云数据库OceanBase的事务处理语言

数据库事务(Database Transaction)是指作为单个逻辑工作单元执行的一系列操作。事务处理可以用来维护数据库的完整性,保证成批的SQL操作全部执行或全部不执行。
显示事务是用户自定义或用户指定的事务。通过BEGIN TRANSACTION,或BEGIN和BEGIN WORK(被作为START TRANSACTION的别名受到支持)语句显示开始,以COMMIT或ROLLBACK语句显示结束。
格式
开启事务语句格式如下: START TRANSACTION
    [WITH CONSISTENT SNAPSHOT];
BEGIN [WORK] ;
COMMIT [WORK] ;
ROLLBACK [WORK];


OceanBase 1.0 只支持 READ COMMITTED 隔离级别。


  • WITH CONSISTENT SNAPSHOT子句用于启动一个一致的读取。该子句的效果与发布一个START TRANSACTION,后面跟一个来自任何OceanBase表的SELECT的效果一样。OceanBase 1.0语法上支持 WITH CONSISTENT SNAPSHOT子句,其WITH CONSISTENT SNAPSHOT功能暂时还未实现。

  • BEGIN和BEGIN WORK被作为START TRANSACTION的别名受到支持,用于对事务进行初始化。START TRANSACTION是标准的SQL语法,并且是启动一个ad-hoc(点对点)事务的推荐方法。一旦开启事务,则随后的SQL数据操作语句(即INSERT,UPDATE,DELETE,不包括REPLACE)直到显式提交时才会生效。

提交当前事务语句格式如下: COMMIT [WORK];

回滚当前事务语句格式如下: ROLLBACK [WORK];

展开
收起
云栖大讲堂 2017-11-01 16:14:28 2186 0
0 条回答
写回答
取消 提交回答
问答排行榜
最热
最新

相关电子书

更多
DTCC 2022大会集锦《云原生一站式数据库技术与实践》 立即下载
阿里云瑶池数据库精要2022版 立即下载
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载