初看数据库,对锁很不了解,求教。
锁有共享锁和独占锁。
举例来说,事务1用select语句访问记录a,则取得共享锁,语句执行完毕,但事务未提交,此时共享锁释放吗?若事务未提交共享锁就释放了的话,那如果又有一个事务更新了记录a,则事务1再用select语句访问记录a,岂不会得到不一样的结果?
事务1又用update语句访问记录a,取得独占锁,访问结束,事务仍未提交,此时独占锁释放吗?
另外当一个事务取得独占锁后,就意味着持有共享锁,可以执行select语句,对吗?
问题点数:0、回复次数:1Top
1 楼java_and_ejb()回复于 2005-04-01 21:41:18 得分 0
另外,当事务1获得了对记录a的共享锁,则事务2对记录a的select访问不会堵塞,而update,insert等访问会堵塞对吗?
若事务1获得了对记录a的独占锁,则事务2对记录的任何访问(包括select)都会堵塞,对吗?Top




