ABORT

说明

取消一个事务。

语法

abort ::=

参数

WORK

表示取消事务。此参数没有意义。

TRANSACTION

表示取消事务。此参数没有意义。

注解

在我们的系统中,ABORT; 和 ROLLBACK; 的意义相同,都是取消一个事务中的动作对数据库产生的影响。如果此时不在一个事务中,将导致出错。

示例

示例1: 取消事务所做的动作

--  清理环境
DROP TABLE tab1 CASCADE;

--  创建表, 并插入两条数据
CREATE TABLE tab1 (a INT);
INSERT INTO tab1 VALUES(1000);
INSERT INTO tab1 VALUES(2000);

SELECT * FROM tab1 ORDER BY a;
A(int)      |
------------
1000        |
------------
2000        |
总数目:2

--  开启一个事务
BEGIN;

--  插入第三条数据
INSERT INTO tab1 VALUES(3000);

    
--  此时查询到三条数据
SELECT * FROM tab1 ORDER BY a;
A(int)      |
------------
1000        |
------------
2000        |
------------
3000        |
总数目:3
    
--  取消事务所做的动作
ABORT;


--  此时查询到两条数据, 开启事务后的第三条数据不存在了
SELECT * FROM tab1 ORDER BY a;
A(int)      |
------------
1000        |
------------
2000        |
总数目:2

--  删除此表
DROP TABLE tab1 CASCADE;