PLSQL定时任务创建 Oracle数据库dbms_job
- 创建一个job
- job创建

begin
sys.dbms_job.submit(job => 1, --代表的是号码,第几个定时任务
what => 'sys_mailing_list_job;', --这个是调用的你想使用的存储过程切记要打;不然会报错
next_date => to_date('20-08-2018 14:05:00', 'dd-mm-yyyy hh24:mi:ss'), --这个是下次调用的时间
interval => 'trunc(sysdate,''hh'')+(60+5)/(24*60)');
commit; --这个是间隔时间 。我这个代表的是每个小时的过5 比如 1:05,2:05,3:05...24小时的
end;

- 删除job: dbms_job.remove(jobno); – jobno就是你得任务号
- 修改要执行的操作: job:dbms_job.what(jobno, what); --指定任务号以及存储过程
- 修改下次执行时间:dbms_job.next_date(jobno, next_date); --指定任务号的时间
- 修改间隔时间:dbms_job.interval(jobno, interval); --指定任务号的间隔时间
- 启动job: dbms_job.run(jobno); --指定任务号启动
- 停止job: dbms.broken(jobno, broken, nextdate); –broken为boolean值 N代表启动,Y代表没启动(STOP)
- 创建一个dbms_job
- 新建一个表
create or replace table testTable(
id number(32);
name varchar2(10);
);
- 新建一个存储过程

create or replace procedure testTable_PRO is
begin
insert into testTable
values{
id = 111,
name ='测试'
}
end;

- 开始创建dbms_job
1、
2、
(1)what的值是存储过程的名字
(2)间隔的值是间隔的时间(也就是多久执行一次)
(3)作业的值自动生成
(4)下一个日期会自动生成也可以手动填写
3、关于job运行的时间
关于job运行时间

关于job运行时间 1:每分钟执行 Interval => TRUNC(sysdate,'mi') + 1/(24*60) 2:每天定时执行 例如:每天的凌晨1点执行 Interval => TRUNC(sysdate) + 1 +1/(24) 3:每周定时执行 例如:每周一凌晨1点执行 Interval => TRUNC(next_day(sysdate,'星期一'))+1/24 4:每月定时执行 例如:每月1日凌晨1点执行 Interval =>TRUNC(LAST_DAY(SYSDATE))+1+1/24 5:每季度定时执行 例如每季度的第一天凌晨1点执行 Interval => TRUNC(ADD_MONTHS(SYSDATE,3),'Q') + 1/24 6:每半年定时执行 例如:每年7月1日和1月1日凌晨1点 Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24 7:每年定时执行 例如:每年1月1日凌晨1点执行 Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'), 12)+1/24 job的运行频率设置 1.每天固定时间运行,比如早上8:10分钟:Trunc(Sysdate+1) + (8*60+10)/24*60 2.Toad中提供的: 每天:trunc(sysdate+1) 每周:trunc(sysdate+7) 每月:trunc(sysdate+30) 每个星期日:next_day(trunc(sysdate),'星期日') 每天6点:trunc(sysdate+1)+6/24 半个小时:sysdate+30/(24*60) 3.每个小时的第15分钟运行,比如:8:15,9:15,10:15…:trunc(sysdate,'hh')+(60+15)/(24*60) 。

4、怎么查看job
SELECT * FROM dba_jobs;

(1)job是生成的作业号
(2)last_date是最后一次的执行时间
(3)next_date是下一次的执行时间
(4)broken为N代表这个job正在运行
(5)interval是你写的间隔执行时间
5、停止和启动一个JOB
- 启动job: dbms_job.run(jobno); --指定任何号启动
- 停止job: dbms.broken(jobno, broken, nextdate); –broken为boolean【true,false】值

--调用broken存储的过程 将broken设置为true就停止了一个启动的job
begin
dbms_job.broken(1, true, sysdate);
commit;
end; --调用dbms_job.run();启动Job
begin
dbms_job.run(1);
commit;
end;

————————————————
PLSQL定时任务创建 Oracle数据库dbms_job的更多相关文章
- 使用PLSQL 创建Oracle数据库用户并设置权限
转至https://blog.csdn.net/ying890/article/details/14083029?utm_medium=distribute.pc_relevant_download. ...
- 详解:数据库名、实例名、ORACLE_SID、数据库域名、全局数据库名、服务名及手工脚本创建oracle数据库
数据库名.实例名.数据库域名.全局数据库名.服务名 , 这是几个令很多初学者容易混淆的概念.相信很多初学者都与我一样被标题上这些个概念搞得一头雾水.我们现在就来把它们弄个明白. 一.数据库名 什么是数 ...
- PLSQL Develope连接oracle数据库配置
首先我们在讲PLSQL Develope连接oracle数据库配置之前,先讲下如果不用PLSQL Develope连接oracle数据库,那该怎么办,那就是在本机安装oracle数据库,不过这个对于配 ...
- Windows Server系统定时任务备份ORACLE数据库
Windows Server系统定时任务备份ORACLE数据库 一.编辑备份脚本 RMAN备份数据库 1.在备份脚本目录下,创建bat文件db_rman.bat set ORACLE_SID=orcl ...
- Java创建Oracle数据库表
我们通常只用java执行DML(即:insert, update, delete, select)操作,很少用来执行DDL(create, drop, alert)操作.今天试了下如何用java来创建 ...
- 在mysql数据库中创建Oracle数据库中的scott用户表
在mysql数据库中创建Oracle数据库中的scott用户表 作者:Eric 微信:loveoracle11g create table DEPT ( DEPTNO int(2) not null, ...
- 创建oracle数据库job服务
创建oracle数据库job服务:PlSqlDev操作job https://www.baidu.com/link?url=5vXhw0IqjvWEAgGSIYsSEVPvJb6njGkJ-_P_VF ...
- plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法(转)
原文转自:plsql连接本地oracle数据库,而远程主机却无法连接,出现无监听程序的解决方法 最近在使用plsql连接本地oracle数据库的时候,在同一网络环境中,出现了可以连接本地oracle, ...
- 创建Oracle数据库实例
创建Oracle数据库实例 转自oracle数据库创建实例 数据库已经安装完成,可以正常登陆查看用户等操作. system用户只能用normal身份登陆em.除非你对它授予了sysdba的系统权限或者 ...
- [原创]安装Oracle 11gR2,以及如何在win8下使用plsql develper连接Oracle数据库 ,在这里和大家分享下
一,关于win8下安装Oracle 11gR2 1.我下载的是Oracle_11gR2_win64.其中有两个包: 注意:在解压了之后将:win64_11gR2_database_2of2\datab ...
随机推荐
- OpenCV4.1.0与CUDAcuda_10.1.105联合进行图像特征点提取和特征匹配时,运行程序时错误提示:无法定位程序输入点?createBFMatchercv@DescriptorMatcher@cuda@cv......于动态链接库......
问题描述: OpenCV4.1.0与CUDAcuda_10.1.105联合进行图像特征点提取和特征匹配时,运行程序时错误提示:无法定位程序输入点?createBFMatchercv@Descripto ...
- [转]CopyPlugin Invalid Options options should be array ValidationError: CopyPlugin Invalid Options
这个错误是使用webpack的一个plugin出现的错误.这个plugin是copy-webpack-plugin我把文档的例子复制,然后就报了这个错误.文档的例子: const CopyPlugin ...
- IM跨平台技术学习(四):蘑菇街基于Electron开发IM客户端的技术实践
本文由蘑菇街前端技术团队分享,原题"Electron 从零到一",有修订和改动. 1.引言 本系列文章的前面几篇主要是从Electron技术本身进行了讨论(包括:第1篇初步了解El ...
- map循环如何跳出循环
今天在开发的时候遇到了一个问题.就是想在使用map的时候跳出循环无法实现,于是就在网上搜寻了一番,说map本身不能跳出循环,有一个大佬提出了抛出异常的方法,记录一下 let list=[1,2,3,4 ...
- Solution Set -「LOCAL」冲刺省选 Round I
\(\mathscr{Summary}\) 状态还行叭. A 题又犯坏习惯,走起来就大力分讨,上了个厕所之后冷静一下开始寻找比较普适性的 DP 状态,然后几乎就切掉了,可惜复杂度写假了没发现( ...
- 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(一):从.NET IoT入门开始
前言 为什么我会想着制作一个智能桌面机器人呢?自问自答一下,看过我之前文章的小伙伴应该都知道我之前有为稚晖君开源的ElectronBot桌面机器人开发过一个桌面上位机软件叫电子脑壳,由于Electro ...
- Spring IOC实现原理,源码深度剖析!
Spring容器高层视图 Spring 启动时读取应用程序提供的Bean配置信息,并在Spring容器中生成一份相应的Bean配置注册表,然后根据这张注册表实例化Bean,装配好Bean之间的依赖关系 ...
- Golang-web编程
https://www.w3cschool.cn/yqbmht/7rcvwcqm.html 第一章 Go环境配置 欢迎来到Go的世界,让我们开始探索吧! Go是一种新的语言,一种并发的.带垃圾回收的. ...
- ctfshow--web6 sql注入空格绕过
这道题目空格被过滤了,那么我们可以用/**/来替换空格 'union/**/select/**/1,(select/**/database()),3# //查看数据库名名字为web2 查看web2下的 ...
- VXLAN 网络中报文转发过程
本文分享自天翼云开发者社区<VXLAN 网络中报文转发过程>,作者:刘****林 以同网段的 VM 间互通简单介绍 VXLAN 网络中的报文转发过程. 1.VM1 发送目的地址为 VM2 ...