Oracle DBMS_LOCKパッケージ

DBMS_LOCKは、Oracleロックマネージメントサービスへのインタフェースを提供するパッケージです。SLEEPプロシージャなどが含まれています。この記事では、使い方や権限の設定・確認方法などをご紹介します。

権限

DBMS_LOCKパッケージはexecute_catalog_roleロールに対して実行権限が付与されている。したがって、DBMS_LOCKパッケージを実行するには、あらかじめ実行権限またはexecute_catalog_roleロールをユーザに付与しておく必要がある。たとえば、SYSユーザで接続して次のSQL文を実行する。

GRANT EXECUTE ON SYS.DBMS_LOCK TO marina;

または

GRANT execute_catalog_role TO marina;

DBMS_LOCKパッケージに含まれるプロシージャ

DBMS_LOCKパッケージに含まれるプロシージャ一覧
サブプログラム 説明
SLEEP 指定した秒数スリープする。

SLEEP

SLEEPは、指定した秒数スリープするプロシージャである。

DBMS_LOCK.SLEEP(seconds IN NUMBER);