急!!!怎样在pl/sql developer中给oracle添加一个调度作业?
解决方案 »
- Oracle Data Miner可以运行在Oracle Express上吗?
- 请帮我分析OracleStartDRCL启动不了的原因
- 求sql语句,group by语句中查询多个字段内容。
- 在ms sql2000中用的case when 查询如果改为oracle该如何写?
- Berkeley DB 怎样保证写1亿条数据.并且性能不下降
- oracle的导出权限问题
- 如何select出用户表中的字段名或信息?
- zhaoyongzhu进来领分4
- ORACLE高手请留步,请问在OCI中怎么调用自己定义的函数如。。。
- 棘手问题!!重做系统后如何恢复数据库数据的问题
- 头疼的sql语句,怎么写?
- 关于oracle 的连接问题!
SQL> create table a(a date);
Table created
创建一个过程
create or replace procedure kill_inactivate_SESSION is
cursor cur_session is
select s.sid, s.serial#
from v$session s, v$session_wait sw
where s.sid = sw.sid
and s.status = 'INACTIVE'
--and s.username in (select user_name from gusermgr.gbs_user_tbl)
and s.last_call_et >= 3600
and sw.event = 'SQL*Net message from client';
v_sid v$session.sid%type;
v_serial v$session.serial#%type;
v_sqlstr varchar2(63);
v_errmsg varchar2(63);
begin
v_sqlstr := 'alter system kill session ''';
v_errmsg := 'is killed because it is INACTIVE for longer than 1 hour.';
open cur_session;
loop
fetch cur_session into v_sid, v_serial;
exit when cur_session%NOTFOUND;
execute immediate v_sqlstr||v_sid||', '||v_serial||'''';
DBMS_OUTPUT.PUT_LINE('SESSION('||v_sid||', '||v_serial||') '||v_errmsg);
end loop;
close cur_session;
return;
end kill_inactivate_SESSION; Procedure created
提交作业
SQL> variable n number;
SQL> begin
2 dbms_job.submit(:n,'kill_inactivate_session;',sysdate,'sysdate+1');
3 commit;
4 end;
5 /PL/SQL procedure successfully completed
n
---------
514示例如上
sys.dbms_job.submit(job => :job,
what => 'MYPROC;',
next_date => to_date('17-01-2007 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),
'TRUNC(SYSDATE + 1)');
commit;
end;
/