参考:http://blog.csdn.net/ikikik2002/article/details/5209536
DBMS_LOCK.SLEEP(10);
用于将会话挂起指定的时间。单位为妙,最小时间间隔为0.01秒。
執行 ORACLE_HOME/rdbms/admin/dbmslock.sql 来创建 dbms_lock;
一些DBMS_开头的pkg在pl/sql中用到的时候,需要以sysdba身份对用户授权才能运行;
如:GRANT EXECUTE ON DBMS_LOCK TO username;
查看授权情况:
select * from dba_tab_privs p where p.table_name like '%DBMS_LOCK%';
测试代码:
begin
dbms_output.put_line(systimestamp);
dbms_lock.sleep(60);
dbms_output.put_line(systimestamp);
dbms_output.put_line(to_char(sysdate,'yyyymmddhh24miss'));
end;
/
创建测试表并插入测试数据:
create table tt (id number(4),itiem date);
begin
for i in 1 .. 10
loop
insert into tt (id,itiem)
values (i,systimestamp);
commit;
dbms_lock.sleep(5);
end loop;
end;
/
select * from tt;
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29519108/viewspace-2055447/
,如需转载,请注明出处,否则将追究法律责任。