PL/SQLで表をアンロックする方法を教えてください。
PL/SQLでテーブルのロックを解除するには`DBMS_LOCK`パッケージ内の`RELEASE`プロシージャを使用します。以下にPL/SQLでテーブルのロックを解除する際のコード例を示します。
DECLARE
lockhandle VARCHAR2(128); BEGIN
– 分配一个锁句柄
lockhandle := DBMS_LOCK.ALLOCATE_UNIQUE(‘my_lock’);
– 尝试获取表的锁
DBMS_LOCK.REQUEST(lockhandle, DBMS_LOCK.X_MODE, timeout => 0, release_on_commit => TRUE);
– 在这里执行需要锁定表的代码
– 释放表的锁
DBMS_LOCK.RELEASE(lockhandle); END;
DBMS_LOCK.ALLOCATE_UNIQUE 関数で排他用ロックハンドルを取得し、DBMS_LOCK.REQUEST 関数で排他モードのロックを取得する。ロックされたコードブロックで処理を実行し、DBMS_LOCK.RELEASE 関数でロック解除を行う。同じロックハンドルでロックを解除する必要があることに注意し、コミット時にロックを解放する場合はリリース機能パラメータを True にしておく。