问题
多项选择题
Mary创建了一个名为SCHEDULE的表,结构如下:
ID NUMBER(9) PK
NAME VARCHAR2(25)
CLASS_DATE DATE
她将这个表的INSERT权限赋予了您。随后,您向SCHEDULE表中插入了三行数据,但是并未发提交命令。此时Maiy发了如下的命令:
SELECT *
FROM schedule;
请问在以下的陈述中,哪3个是正确的
A.Mary将能够访问SCHEDULE表
B.Mary将不能访问SCHEDULE表
C.Mary将能够向SCHEDULE表中插入相同的记录
D.Maiy将能够看到您在SCHEDULE表中插入三个记录
E.Mary将不能看到您在SCHEDULE表中插入三个记录
F.Mary将不能向SCHEDULE表中插入相同的记录
答案
参考答案:A,E,F
解析: 这一题是测试对Oracle数据库事务的熟悉程度。根据有关利用COMMIT和ROLLBACK语句控制事务的介绍,可知在Oracle数据库系统上执行事务处理的用户可以看到正在修改的数据,而其他的用户只能看到修改之前的数据,所以选项A和E是正确的,而选项B和D都是错误的。
参阅有关事务处理应注意的一些问题,可知因为您的事务没有提交,因此这三行数据仍然上着锁,所以Mary不能够对其进行任何DML操作,所以选项C也是错误的,而选项F则是正确的。