一、PLSQL 创建Oracle定时任务

1、创建任务执行的存储过程,如名称为testJob,向测试表中插入数据

// 创建一个sequence对象,提供自增长的序列号
create sequence seq_createId
increment by 1
start with 1
nomaxvalue
minvalue 1
nocycle
nocache;//创建一个存储过程
create or replace procedure testJob is
id number(10);
beginSELECT seq_createId.Nextval into id FROM DUAL;insert into TEST_JOB(id,name,age)values(id,'allen',18);
end;

2、定时器对应的DBMS_Jobs文件夹,右键新建(new)

3、创建任务:

4、查看任务

select * from dba_jobs

二、 用语句创建 

1、创建任务执行的存储过程,如名称为testJob,向测试表中插入数据,如文章开头,此处省略。

2、创建一个 定时任务 job

declarejob number;
BEGINDBMS_JOB.SUBMIT(  JOB => job,  /*自动生成JOB_ID*/  WHAT => 'testJob;',  /*需要执行的存储过程名称或SQL语句*/  NEXT_DATE => sysdate,  /*初次执行时间-立即执行*/  INTERVAL => 'trunc(sysdate,''mi'')+1/(24*60)' /*每隔1分钟执行一次*/);  commit;
end;

3、查询定时任务相关字段信息

4 、停止定时任务

declare
begin   dbms_job.broken(24,true,sysdate);        /*停止一个job,jobId, job的ID,里面参数true也可是false,next_date(某一时刻停止)也可是sysdate(立刻停止)。   */
commit;
end;

5、启动指定定时任务

declare
beginDBMS_JOB.RUN(24); /*24 job的id*/commit;
end;

6、删除定时任务

declare
begindbms_job.remove(24);  /*删除自动执行的job,参数是 job的id*/commit;
end;

7、修改定时任务的间隔时间

declare
begindbms_job.interval(24,interval => 'TRUNC(SYSDATE)+1');  /*第一个参数为job的ID,第二个参数interval: 计算下一次任务执行的时间表达式*/commit;
end;

8、修改下一次执行时间

declare
begindbms_job.next_date(24,to_date('2020-11-9 12:08:00','yyyy-mm-dd hh24:mi:ss')); /*第一个参数:job的ID;第二个参数:要修改后的计算下一次执行的时间表达式*/commit;
end;

9、修改定时任务要执行的操作

declare
begindbms_job.what(24,'testJob2();');   /* 第一个参数:job的ID;第二个参数:要更改的新操作名称(操作名必须存在)*/
commit;
end;

三、结

1、dba_jobs 表中字段含义

dba_jobs 表中字段含义:JOB                                         任务的唯一标识码LOG_USER         提交任务的用户PRIV_USER         赋予任务权限的用户SCHEMA_USER           对用户作语法分析的用户模式LAST_DATE         最后一次成功执行任务的时间LAST_SEC         最后一次成功执行任务的时间的时分秒THIS_DATE         正在执行的任务的开始时间,若没有则为空THIS_SEC 正在执行的任务的开始时间的时分秒,若没有则为空NEXT_DATE 下一次执行定时任务的时间NEXT_SEC 下一次执行定时任务的时间的时分秒TOTAL_TIME 执行当前任务所需要的时间,单位:秒BROKEN         标志参数,Y表示任务中断,以后不会再运行 INTERTAL 计算下一次执行定时任务的时间表达式FAILURES 当前定时任务执行失败的总次数WHAT 执行任务的PL/SQL代码块NLS_ENV 任务执行的NLS会话设置MISC_ENV 定时任务运行的其他一些参数设置INSTANCE 标识当前任务运行是否受限,0 没有受限

2、INTERVAL 部分参数值示

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)'每月25号00:00执行: 'TRUNC(LAST_DAY(SYSDATE ) + 25)'--------------------------1:每分钟执行
Interval => TRUNC(sysdate,'mi') + 1/ (24*60)
或
Interval => sysdate+1/14402:每天定时执行
例如:每天的凌晨1点执行
Interval => TRUNC(sysdate) + 1 +1/ (24)3:每周定时执行
例如:每周一凌晨1点执行
Interval => TRUNC(next_day(sysdate,'星期一'))+1/244:每月定时执行
例如:每月1日凌晨1点执行
Interval =>TRUNC(LAST_DAY(SYSDATE))+1+1/245:每季度定时执行
例如每季度的第一天凌晨1点执行
Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/246:每半年定时执行
例如:每年7月1日和1月1日凌晨1点
Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/247:每年定时执行
例如:每年1月1日凌晨1点执行
Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24

创建Oracle定时任务及其各项操作相关推荐

  1. 新建oracle数据库定时任务,创建 Oracle 定时任务

    功能说明: 要求实现数据库中的表数据每天午夜时分定时自动执行数据迁移动作. 1. 创建历史数据存储表(USER_TAB_BAK), 要求与源表(USER_TAB)结构一致; for example: ...

  2. PLSQL创建Oracle定时任务,定时执行存储过程

    1.创建定时向表中插入数据的存储过程,名为testJob. CREATE OR REPLACE PROCEDURE "testJob" AS BEGINEXECUTE IMMEDI ...

  3. PLSQL创建Oracle定时任务

    转自:http://www.cnblogs.com/yx007/p/6519544.html#_label0 转载于:https://www.cnblogs.com/good-tomorrow/p/7 ...

  4. oracle 定时任务例子【项目例子】

    说明:请在plsql工具的命令窗口中,依次按步骤执行如下脚本    (1)建立备份表 my_test_log2 create table my_test_log2 as select * from m ...

  5. Oracle定时任务(1)-DBMS_SCHEDULER

    Oracle 10g之前,可以使用dbms_job来管理定时任务. 10g之后,Oracle引入dbms_scheduler来替代先前的dbms_job, 在功能方面,它比dbms_job提供了更强大 ...

  6. oracle 定时任务删除数据

    这几天在工作中遇到一个问题就是:要删除表在备份表中已存在的数据(2000多万数据),这个数据是SQL查出来的,例如: select count(1) from JY_SALE_FULLORDER_DT ...

  7. oracle sys.dbms job,Oracle定时任务之Job和Dbms_job

    感谢老哥,解决了我的疑惑 https://www.cnblogs.com/yscit/p/10376005.html https://www.cnblogs.com/ybhcolin/archive/ ...

  8. 第四章:Oracle 异地WINDOWS备份操作

    Oracle 异地WINDOWS备份操作 (例子为备份esb与dw实例下用户近3天数据) 一.脚本内容及注解(备份服务器需安装oracle客户端) set YYYYmmdd=%date:~0,4%%d ...

  9. oracle rac启停数据库,Oracle rac 启动停止操作文档 PDF 下载

    一.ORACLE 正常启动/关闭操作步骤 1.启动OS操作系统集群 当RAC的两台机器操作系统正常启动后,首先启动OS操作系统的集群,命令如下: cmruncl –v (root 权限下)(启动系统集 ...

  10. oracle手工快照,创建oracle快照的步骤

    创建oracle快照的步骤[@more@] 1. 创建快照之前需要在sys用户下运行catrep.sql(此操作需要一个大的回滚段), 并且给user授予CREATE ANY SNAPSHOT.ALT ...

最新文章

  1. RDKit:运用RDKit计算USRCAT(形状相似性)
  2. 08--swift之类与结构体
  3. (王道408考研操作系统)第二章进程管理-第三节1:进程同步与互斥的基本概念
  4. python全局变量的声明和使用_python自学篇(第三章:函数)
  5. 序列化之XML序列化技术
  6. 访问不了_etherscan访问不了的替代方案
  7. 20151212Jquery 工具函数代码备份
  8. 参考文献顺序_科技论文参考文献的著录规则及存在问题
  9. Eclipse 的中文简体版安装教程
  10. 浏览器市场占有率最新分析
  11. 计算机科学理论数学研讨会,2017年奇异摄动理论及其应用学术研讨会会议-上海交通大学数学系.DOC...
  12. 如何运用知识付费系统,实现内容变现!
  13. 纯css绘制简易对话气泡
  14. B站季报图解:营收10.8亿同比增48% 用户增长超预期
  15. 新的摩尔多瓦投资公民身份计划开放申请
  16. 未来5年内, UWB技术或将成为室内定位的主流技术!
  17. 第15周OJ实践12 字符串替换
  18. ElasticSearch 学习笔记
  19. 16广东各市人口数据(echarts)
  20. 通达信板块监控指标_[通达信主力监控精灵]通达信主力监控系统主图/副图指标公式...

热门文章

  1. 华为云计算hcip证书有效期_华为认证云计算 V4.0认证
  2. 南京大学计算机考研经验分享,南京大学计算机考研经验 分(范文).docx
  3. TRNSYS与MATLAB联合仿真
  4. 计算机英语加密信息,计算机信息安全中数据加密技术-计算机英语论文-计算机论文(10页)-原创力文档...
  5. 剪映怎么把英文字幕翻译成中文?(附视频教程+字幕翻译工具)
  6. 2022新版千月影视双端APP带H5功能开源程序支持当面付和易支付
  7. hadoop put命令的格式_Hadoop Shell命令(基于linux操作系统上传下载文件到hdfs文件系统基本命令学习)...
  8. matlab作函数图像,matlab绘制函数图像
  9. VTK:图像平滑——高斯滤波器
  10. com词根词缀_【单词杂谈】推荐几个学习英语词根词缀的网站,建议收藏!