在pl/sql developer里调用dbms_lock,为何会提示‘dbms_lock must be declare’,请各位大虾指点迷津。

解决方案 »

  1.   

    在pl/sql中使用dbms_lock需要管理员显示进行授权
    SQL> grant execute on dbms_lock to ...之所以在SQLPLUS下你可以使用,是因为你通过角色授权获得了对dbms_lock的执行权限,而pl/sql中通过角色获得的权限是无效的。如果你在sqlplus下先执行
    SQL> set role none;
    然后再执行dbms_lock,同样汇报错。pl/sql环境就相当于set role none