题目 部分

在Oracle中,如何让程序等待60秒钟后继续运行?

 

     答案部分

 

可以执行$ORACLE_HOME/rdbms/admin/dbmslock.sql来创建DBMS_LOCK包,该包可以实现让程序暂时等待的功能。若想普通用户使用该包,则需要在SYS用户下执行“GRANT EXECUTE ON DBMS_LOCK TO USER_XXX;”命令,下面给出一个示例:

 

 1SYS@lhrdb> SET SERVEROUTPUT ON
2SYS@lhrdb> BEGIN
3  2      DBMS_OUTPUT.PUT_LINE(TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'));
4  3      DBMS_LOCK.SLEEP(60);
5  4      DBMS_OUTPUT.PUT_LINE(TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS'));
6  5  END;
7  6  /
820160822154330
920160822154430
10PL/SQL procedure successfully completed.

 

由结果可以看出,程序刚好等待了1分钟。

作者:李华荣。

 

【DB笔试面试496】如何让程序等待60秒钟后继续运行?_oracle