RELEASE

该函数显式释放使用REQUEST函数获取的锁。

RELEASE是一个重载函数,可以接受用户定义的锁标识或ALLOCATE_UNIQUE返回的锁句柄。

语法

DBMS_LOCK.RELEASE (
    id IN INTEGER || lockhandle IN VARCHAR2)
RETURN INTEGER;

结构

参数 模式 说明
id or lockhandle IN 用户分配的锁标识符,或ALLOCATE_UNIQUE返回的锁句柄

返回值

返回值 说明
0 成功
3 无效的参数
4 还未持有指定的锁
8 其他错误,比如,无效的句柄

示例

DECLARE
    v_result NUMBER;
    V_LOCK_HOLDER VARCHAR2(128);
BEGIN
    DBMS_LOCK.ALLOCATE_UNIQUE('lockA', V_LOCK_HOLDER, 3600);
    v_result:=DBMS_LOCK.RELEASE(V_LOCK_HOLDER);
    dbms_output.put_line(v_result);
END ;

/