「Oracle入門」SELECT FOR UPDATEの使い方

1.ロック中の行は無視する –SKIP LOCKED
SQL構文
SELECT dbms_random.random() as cft,USERNO
FROM USERTBL
WHERE ROWNUM <= 100 ORDER BY cft
FOR UPDATE SKIP LOCKED

2.待機秒数を指定する–WAIT
構文
SELECT カラム WHERE 条件
FOR UPDATE
[OF [TABLE_NAME.]COLUMN_NAME1 [,COLUMN_NAME2…]]
[WAIT [N_SEC] | NOWAIT]

SQL構文
5 秒までは競合するトランザクションの完了を待機
SELECT USERNO
FROM USERTBL WHERE 条件
FOR UPDATE OF USERNO  WAIT 5 ;

Oracle

Posted by arkgame