射精一区欧美专区|国产精品66xx|亚洲视频一区导航|日韩欧美人妻精品中文|超碰婷婷xxnx|日韩无码综合激情|特级黄片一区二区|四虎日韩成人A√|久久精品内谢片|亚洲成a人无码电影

您現(xiàn)在的位置:首頁(yè) > IT認(rèn)證 > oracle認(rèn)證 >

Oracle開(kāi)發(fā)技術(shù):OracleSkipLocked


Oracle開(kāi)發(fā)技術(shù):OracleSkipLocked

Oracle Skip Locked

  [html]

  Oracle Skip Locked

  Oracle 11g引入skip locked。

  Skip Locked 是在query select語(yǔ)句中跳過(guò)已經(jīng)被其他正在執(zhí)行的query select語(yǔ)句鎖住的行,只執(zhí)行能夠獲得鎖的行。

  select for update如何查詢大數(shù)量,那么其他session同時(shí)執(zhí)行的select語(yǔ)句可能會(huì)等待鎖超時(shí)而報(bào)下面這個(gè)錯(cuò)

  ORA-30006: resource busy; acquire with WAIT timeout expired

  如果是不超時(shí)的case,那么會(huì)出現(xiàn)

  ORA-00054 resource busy and NOWAIT specified

  比如session1執(zhí)行下面語(yǔ)句:

  SELECT *

  FROM dept WHERE

  deptno = 10

  FOR UPDATE NOWAIT;

  輸出:

  DEPTNO DNAME LOC

  ---------- -------------- -------------

  10 ACCOUNTING NEW YORK

  session2執(zhí)行下面語(yǔ)句:

  SELECT * FROM dept

  WHERE deptno IN (10,20)

  FOR UPDATE NOWAIT;

  那么輸出:

  SELECT * FROM dept WHERE deptno IN (10,20)

  FOR UPDATE NOWAIT

  ERROR at line 1:

  ORA-00054: resource busy and acquire with NOWAIT specified

  因?yàn)閟ession1已經(jīng)鎖住10這一行,session2請(qǐng)求獲得不到10這一行的鎖,就報(bào)錯(cuò)了。

  那么在session2我們可以使用skip locked

  SELECT * FROM dept

  WHERE deptno IN (10,20)

  FOR UPDATE SKIP LOCKED;

  此時(shí)輸出:

  DEPTNO DNAME LOC

  ---------- -------------- -------------

  20 RESEARCH DALLAS

  SKIP LOCKED會(huì)跳過(guò)被鎖住的行,只查詢沒(méi)有鎖住的行。

相關(guān)文章

無(wú)相關(guān)信息
更新時(shí)間2022-03-13 11:18:58【至頂部↑】
聯(lián)系我們 | 郵件: | 客服熱線電話:4008816886(QQ同號(hào)) | 

付款方式留言簿投訴中心網(wǎng)站糾錯(cuò)二維碼手機(jī)版

客服電話:4008816886