052-185

User SCOTT executes the following command on the EMP table but has not issued COMMIT,
ROLLBACK, or any data definition language (DDL) command:
SQL> SELECT ename FROM emp
2 WHERE job='CLERK' FOR UPDATE OF empno;
SCOTT has opened another session to work with the database instance. Which three operations would wait when issued in SCOTT's second session? (Choose three.)
A.LOCK TABLE emp IN SHARE MODE;
B.LOCK TABLE emp IN EXCLUSIVE MODE;
C.UPDATE emp SET sal=sal*1.2 WHERE job=MANAGER;
D.INSERT INTO emp(empno,ename) VALUES (1289,'Harry');
E.SELECT ename FROM emp WHERE job='CLERK' FOR UPDATE OF empno;

这个 select ... for update 是在 TX 加上了 S 锁,在 TM 上增加了 SX 锁,
因此不能在 TX 上增加 X 锁,不能在 TM 上增加 S、 SSX、 X 锁
A:正确,这个相当于 TMS 锁
B:正确,这个是 TM 的 X 锁
C:这里只是 TM 的 SX 锁
D:和 C 一样
E:正确,这里是 SX 锁,锁的是不同的记录

posted @ 2017-12-15 14:38  巴啦啦大魔王  阅读(132)  评论(0编辑  收藏  举报