2

以下是与 Oracle SQL Expert 考试相关的问题,有 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

4

1 回答 1

1

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

于 2015-06-12T06:31:48.147 回答