二者的相同点(for update):会对查询的结果集加行锁。
二者的区别(nowait):如果查询的资源已经加了锁,例如正在被修改,那么for update会等待锁释放后执行查询,请求被阻塞。加上nowait后,如果发现结果集中有资源被锁,会立即抛出异常“ORA-00054错误,内容是资源正忙, 但指定以 NOWAIT 方式获取资源”。不会出现线程挂起的情况。
二者的相同点(for update):会对查询的结果集加行锁。
二者的区别(nowait):如果查询的资源已经加了锁,例如正在被修改,那么for update会等待锁释放后执行查询,请求被阻塞。加上nowait后,如果发现结果集中有资源被锁,会立即抛出异常“ORA-00054错误,内容是资源正忙, 但指定以 NOWAIT 方式获取资源”。不会出现线程挂起的情况。