问题 单项选择题

以下哪一个操作将造成交易的自动回滚

A.一个GRANT命令
B.一个CREATE命令
C.系统崩溃
D.没有发COMMIT命令就退出了SQL*Plus

答案

参考答案:C

解析: 这一题是测试对Oracle数据库事务的熟悉程度。根据有关Oracle数据库事务的介绍——“Oracle的一个事务是以第1个可执行的SQL语句开始的,当下列事件之一发生时结束,其中自动提交的包括了DDL、DCL和用户正常退出SQL*Plus,而自动回滚包括了系统崩溃”,所以可以断定选项C是正确的。
因为GRANT命令是DCL语句而DCL语句将自动提交事务,所以选项A可以排除。因为CREATE命令是DDL语句而DDL语句也将自动提交事务,所以选项B同样可以排除。
需要指出的是选项D的叙述有些不太清楚,因为它并未说明是正常退出还是非正常退出,但是由于系统崩溃一定回滚,所以只能选C。

多项选择题
多项选择题