IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置:首頁數(shù)據(jù)庫(kù)Oracle → oracle select語句跳過被鎖記錄的方法

oracle select語句跳過被鎖記錄的方法

時(shí)間:2015/6/28來源:IT貓撲網(wǎng)作者:網(wǎng)管聯(lián)盟我要評(píng)論(0)

  有一個(gè)表中的數(shù)據(jù)需要每月更新,數(shù)據(jù)量近百萬,考慮由10臺(tái)服務(wù)器分?jǐn)偛⒎峙M(jìn)行更新

  這就需要能夠查詢一批記錄并同時(shí)修改這批記錄的更新狀態(tài),以免被正在更新的數(shù)據(jù)被其他服務(wù)器取到

  加行級(jí)鎖,查詢到記錄后再遍歷結(jié)果集更新狀態(tài)?

  select * from t_musicinfo for update wait 10;

  這樣如果某臺(tái)服務(wù)器鎖定記錄,直到更新狀態(tài)并提交這段時(shí)間,其他所有服務(wù)器都得等待,只有這臺(tái)服務(wù)器釋放后其他服務(wù)器才能加鎖進(jìn)行更新操作,10臺(tái)服務(wù)器同步操作,爭(zhēng)搶的機(jī)率豈不是很大,有沒有辦法使查詢時(shí)對(duì)已經(jīng)鎖定的記錄視而不見

  Google之...

  果然有:

  select * from t_musicinfo for update nowait skip locked;

  for update skip locked選項(xiàng)是oracle的一個(gè)未公開的特性,它的含義是select時(shí)跳過被鎖的記錄

  那么接下來遍歷結(jié)果集更新狀態(tài)

  好像不對(duì),結(jié)果集打開后再返回,就不能再打開了

關(guān)鍵詞標(biāo)簽:oracle,select語句

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 Oracle中使用alter table來增加,刪除,修改列Oracle中使用alter table來增加,刪除,修改列oracle中使用SQL語句修改字段類型-oracle修oracle中使用SQL語句修改字段類型-oracle修使用低權(quán)限Oracle數(shù)據(jù)庫(kù)賬戶得到管理員權(quán)限使用低權(quán)限Oracle數(shù)據(jù)庫(kù)賬戶得到管理員權(quán)限Oracle對(duì)user的訪問控制Oracle對(duì)user的訪問控制

相關(guān)下載

人氣排行 ORACLE SQL 判斷字符串是否為數(shù)字的語句Oracle中使用alter table來增加,刪除,修改列的語法ORACLE和SQL語法區(qū)別歸納(1)oracle grant 授權(quán)語句如何加速Oracle大批量數(shù)據(jù)處理Oracle刪除表的幾種方法ORACLE修改IP地址后如何能夠使用Oracle 10g創(chuàng)建表空間和用戶并指定權(quán)限