for update : 会对查询的机构的记录进行锁定,如果锁定时,某些记录正在用,他会阻塞,不返回错误。
记录不使用的时候,立即进行锁定
for update no wairt :会对查询的机构的记录进行锁定,如果锁定时,某些记录正在用,他会立即报错
使用目的:判断记录是否正在被适用
2、for update nowait 与 for update 的目的:
锁定表的所有行,排斥其他针对这个表的写操作。确保只有当前事务对指定表进行写操作。 for update nowait和 for update的区别:
别的事务要对这个表进行写操作时,是等待一段时间还是马上就被数据库系统拒绝而返回.制定采用nowait方式来进行检索,所以当发现数据被别的session锁定中的时候,就会迅速返回ORA-00054错误,内容是资源正忙, 但指定以 NOWAIT 方式获取资源。所以在程序中我们可以采用nowait方式迅速判断当前数据是否被锁定中,如果锁定中的话,就要采取相应的业务措施进行处理。 如何理解上面的话.
开启一会话 (就是开一个sqlwindow)