【问题标题】:Version Query Output after Insert, Update and Delete插入、更新、删除后的版本查询输出
【发布时间】:2015-08-25 15:18:07
【问题描述】:

以下是与 Oracle SQL 专家考试相关的问题,有 4 个选项。它说正确的答案是 C。但我有一个疑问,认为 D 应该是答案,因为它使用了 Oracle FlashBack 技术。任何人都可以解释一下吗?

谢谢。

Q)评估以下陈述:

CREATE TABLE digits
(id NUMBER(2),
description VARCHAR2(15));
INSERT INTO digits VALUES (1,'ONE');
UPDATE digits SET description='TWO' WHERE id=1;
INSERT INTO digits VALUES (2, 'TWO');
COMMIT;
DELETE FROM digits;
SELECT description FROM digits
VERSIONS BETWEEN TIMESTAMP MINVALUE AND MAXVALUE;

上述查询的结果是什么?

A.它不会显示任何值。

B.它将显示值 TWO 一次。

C.它会显示两次值两次。

D.它将显示值 ONE、TWO 和 TWO。

答案:C

【问题讨论】:

    标签: sql database oracle11g flashback


    【解决方案1】:

    这是一个有点技巧的问题,但答案确实是 C,因为“ONE”的原始值从未被提交,两条记录被添加到同一个事务中,结果只有一个“版本”包含两行,都带有“TWO”的描述。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-04-10
      • 1970-01-01
      • 2011-11-27
      • 2012-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多