【发布时间】:2010-02-01 18:37:30
【问题描述】:
在第一个命令T1期间执行的SELECT是一个事务,反过来,DELETE命令(在时间T2)是第一个命令事务B。当时SELECT语句的结果是什么T3(交易)?
alt text http://img682.imageshack.us/img682/3382/sqlm.png
T3 中的SELECT 语句将返回一行(因为尚未提交事务 B)?
【问题讨论】:
标签: oracle transactions
在第一个命令T1期间执行的SELECT是一个事务,反过来,DELETE命令(在时间T2)是第一个命令事务B。当时SELECT语句的结果是什么T3(交易)?
alt text http://img682.imageshack.us/img682/3382/sqlm.png
T3 中的SELECT 语句将返回一行(因为尚未提交事务 B)?
【问题讨论】:
标签: oracle transactions
是的,它会的,因为其他事务尚未提交。
如果您在Transaction B 中的DELETE 之后尝试在Transaction A 中执行相同的DELETE,那么您将不得不等待锁被释放,但SELECT 可以正常工作。
【讨论】: