我需要在ORACLE中执行SQL查询需要一定的时间.所以我写了这个函数:
CREATE OR REPLACE FUNCTION MYSCHEMA.TEST_SLEEP
(
TIME_ IN NUMBER
)
RETURN INTEGER IS
BEGIN
DBMS_LOCK.sleep(seconds => TIME_);
RETURN 1;
EXCEPTION
WHEN OTHERS THEN
RAISE;
RETURN 1;
END TEST_SLEEP;
Run Code Online (Sandbox Code Playgroud)
我以这种方式打电话
SELECT TEST_SLEEP(10.5) FROM DUAL
Run Code Online (Sandbox Code Playgroud)
但要工作,我需要设置授予DBMS_LOCK程序的所有者.
如何在不使用该功能的情况下重写此DBMS_LOCK.sleep功能?