Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
oracle pl/sql数据库管理系统锁定错误_Oracle_Plsql - Fatal编程技术网

oracle pl/sql数据库管理系统锁定错误

oracle pl/sql数据库管理系统锁定错误,oracle,plsql,Oracle,Plsql,在OraclePL/SQL中,我想测试sleep函数。我正在使用hr模式。但它给了我一个错误: PLS-00201: identifier 'DBMS_LOCK' must be declared 代码: 您应该将该包上的内容添加到您的架构中 grant execute on <object> to <user>; 如果您无法访问sys或dba不愿意这样做 GRANT EXECUTE on SYS.DBMS_LOCK to you; 您可以在数据库中创建Jav

在OraclePL/SQL中,我想测试sleep函数。我正在使用hr模式。但它给了我一个错误:

PLS-00201: identifier 'DBMS_LOCK' must be declared
代码:

您应该将该包上的内容添加到您的架构中

grant execute on <object> to <user>;

如果您无法访问sys或dba不愿意这样做

   GRANT EXECUTE on SYS.DBMS_LOCK to you;
您可以在数据库中创建Java过程:

   CREATE OR REPLACE PROCEDURE SLEEPIMPL (P_MILLI_SECONDS IN NUMBER) 
   AS LANGUAGE JAVA NAME 'java.lang.Thread.sleep(long)';
并创建一个调用java存储过程的函数

 CREATE OR REPLACE FUNCTION sleep (
    seconds IN NUMBER
   ) RETURN NUMBER
   AS
   BEGIN
     SLEEPIMPL( seconds );
     RETURN seconds;
   END;
一个月后

GRANT EXECUTE ON sleep TO public;
您可以通过选择按钮进行呼叫

select sleep(6000) from dual

以SYS用户身份连接。将SYS.DBMS_锁上的execute授予USERNAME;
GRANT EXECUTE ON sleep TO public;
select sleep(6000) from dual