该语句用于开启事务。
创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于成都做网站、成都网站设计、同德网络推广、微信小程序开发、同德网络营销、同德企业策划、同德品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供同德建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
数据库事务(Database Transaction)是指作为单个逻辑工作单元执行的一系列操作。事务处理可以用来维护数据库的完整性,保证成批的 SQL 操作全部执行或全部不执行。
显示事务是用户自定义或用户指定的事务。通过BEGIN TRANSACTION
,或BEGIN
和BEGIN WORK
(被作为 START TRANSACTION
的别名受到支持)语句显示开始,以COMMIT
或ROLLBACK
语句显示结束。
transaction_stmt:
START TRANSACTION [READ ONLY | READ WRITE];
| BEGIN [WORK];
| COMMIT [WORK];
| ROLLBACK [WORK];
| SET TRANSACTION {READ ONLY | READ WRITE};
参数 |
描述 |
---|---|
START TRANSACTION [READ ONLY | READ WRITE] |
开启事务语句。一旦开启事务,则随后的 SQL 数据操作语句(即
|
BEGIN |
|
COMMIT |
提交当前事务。 |
ROLLBACK |
回滚当前事务。 |
SET TRANSACTION {READ ONLY | READ WRITE} |
将当前事务设置成 |
假设现有表 a 如下所示。
id |
name |
num |
sell_date |
---|---|---|---|
1 |
a |
100 |
2013-06-21 10:06:43 |
2 |
b |
200 |
2013-06-21 13:07:21 |
3 |
a |
50 |
2013-06-21 13:08:15 |
CREATE TABLE a (id INT,name VARCHAR(10),num INT,sell_date DATE);
INSERT INTO a VALUES (1, 'a',100,'2013-06-21 10:06:43');
INSERT INTO a VALUES (2, 'b',200,'2013-06-21 13:07:21');
INSERT INTO a VALUES (3, 'a',50,'2013-06-21 13:08:15');
依次执行以下命令开始执行事务,将 id 为 3 的的 name 改为 c,并插入一行当前卖出 a 的记录。
obclient> START TRANSACTION;
Query OK, 0 rows affected (0.00 sec)
obclient> UPDATE a SET name = 'c' WHERE id = 3;
Query OK, 1 rows affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
obclient> INSERT INTO a VALUES (4, 'a', 30, '2013-06-21 16:09:13');
Query OK, 1 rows affected (0.00 sec)
obclient> COMMIT;
Query OK, 0 rows affected (0.00 sec)
事务提交后,执行命令查看表 a 信息。
obclient>SELECT * FROM a;
结果如下:
id |
na |
num |
sell_date |
---|---|---|---|
1 |
a |
100 |
2013-06-21 10:06:43 |
2 |
b |
200 |
2013-06-21 13:07:21 |
3 |
c |
50 |
2013-06-21 13:08:15 |
4 |
a |
30 |
2013-06-21 16:09:13 |
注意
在事务还没有
COMMIT
之前,您可以查看下本事务中的操作是否已经生效,比如可以在
COMMIT
前,加一句
SELECT * FROM a;
。本事务 Session 的访问能读到最新的结果,本事务 Session 之外的访问结果肯定是没有生效,在事务还没有
COMMIT
前,你之前做的操作除当前事务连接之外都是不可见的。如果您想回滚该事务,直接用
ROOLBACK
代替
COMMIT
。
网页题目:创新互联OceanBase教程:OceanBaseTRANSACTION
网页URL:http://www.shufengxianlan.com/qtweb/news23/526123.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联