對數據進行查詢操做後,或提示ORA-00054錯誤,這時選定行的資源被佔用,資源正忙。其餘程序或者用戶在佔用着此行數據或者此表。spa
直接查詢。線程
select * from A1 t ; ip
此時取到的數據爲運行前的數據,同一時刻其餘用戶進行數據修改沒法獲取。資源
實時更新查詢it
select * from A1 t for update ; date
for update 更新,其餘管理者進行數據的操做時能夠進行update ,此限制用戶的數量,鏈接用戶少,線程使用不被佔用時可使用。select
等待3秒後更新程序
select * from A1 t for update wait 3 ; 數據
在鎖表的狀況下,更新其餘用戶commit的數據,wait 3的做用讓權操做。查詢
實時更新查詢
select * from A1 t for update nowait ;
for update nowait 根據字面意思理解,無需等待着更新,即實時更新。
使用for update nowait的好處:不用無限制的等待被鎖定的行!
對鎖定的數據可使其餘的操做者避免更多的等待,也能夠進行更多的控制
對交互式應用很受用!對多用戶操做的數據能夠進行交互式保存。
若使用了skip locked,則能夠越過鎖定的行,不會報告由wait n 引起的‘資源忙’異常報告