mysql job 系统学习_oracle的job学习

在网上搜索了一堆都没用找到可用的,在oracle的目录下找了个 在$ORACLE_HOME/RDBMS/admin下面有个spauto.sql, 语句如下: variable jobno number; variable instno number; begin select instance_number into :instno from v$instance; dbms_job.submit(:jobn

在网上搜索了一堆都没用找到可用的,在oracle的目录下找了个

在$ORACLE_HOME/RDBMS/admin下面有个spauto.sql,

语句如下:

variable jobno number;

variable instno number;

begin

select instance_number into :instno from v$instance;

dbms_job.submit(:jobno, 'statspack.snap;', trunc(sysdate+1/24,'HH'), 'trunc(SYSDATE+1/24,''HH'')', TRUE, :instno);

commit;

end;

/

放在pl/sql命令行执行即可,其余语法在参见网上的

---设置某个时间段执行p_job_run_day 过程

declare

jobid number;

v_sql varchar2(2000);

v_day_id number;

begin

SELECT to_number(to_char(SYSDATE-1,'YYYYMMDD')) INTO v_day_id FROM dual;

v_sql:='begin

if to_char(sysdate,''HH24:MI'')=''7:00''

then p_job_run_day;

dbms_output.put_line(''success'');

end if;

commit;

exception

when others then

rollback;

dbms_output.put_line(SQLERRM);

end; ';

dbms_job.submit(jobid,v_sql,sysdate,'sysdate+1/24');

dbms_job.run(jobid);

dbms_output.put_line('job '||to_char(jobid)||' is running');

commit;

end;

/

2 删除job

从select * from user_jobs; 查出job序号

执行 exec dbms_job.remove(22);

3 如果控制执行时间

3

描述 INTERVAL参数值

每天午夜12点 'TRUNC(SYSDATE + 1)'

每天早上8点30分 'TRUNC(SYSDATE + 1) + (8*60+30)/(24*60)'

每星期二中午12点 'NEXT_DAY(TRUNC(SYSDATE ), ''TUESDAY'' ) + 12/24'

每个月第一天的午夜12点 'TRUNC(LAST_DAY(SYSDATE ) + 1)'

每个季度最后一天的晚上11点 'TRUNC(ADD_MONTHS(SYSDATE + 2/24, 3 ), 'Q' ) -1/24'

每星期六和日早上6点10分 'TRUNC(LEAST(NEXT_DAY(SYSDATE, ''SATURDAY"), NEXT_DAY(SYSDATE, "SUNDAY"))) + (6×60+10)/(24×60)'

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值