全部产品
弹性计算 会员服务 网络 安全 移动云 数加·大数据分析及展现 数加·大数据应用 管理与监控 云通信 阿里云办公 培训与认证 智能硬件
存储与CDN 数据库 域名与网站(万网) 应用服务 数加·人工智能 数加·大数据基础服务 互联网中间件 视频服务 开发者工具 解决方案 物联网 更多

事务处理语言

更新时间:2017-06-07 13:26:11

数据库事务(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];
本文导读目录