小试牛刀-嘿嘿,创建job了
今天 周六,我写了这个存储过程。用意:检查 数据库中是否有 该类的 job,如果有那么取job_name 赋值给 job_old, 把job_old加上时间戳 改造成 job_new。那么job_old 和job_new 名称是相似的,完成第一步;第二步 if判断 ,如果系统中有 job,那么删除 旧的job。第三步 采用新的job_new 创建新的job。以此类推
CREATE OR REPLACE PROCEDURE CREATE_DROP_JOB_OK
AS
JOB_OLD_NAME VARCHAR2(20);
JOB_NEW_NAME VARCHAR2(20);
BEGIN
JOB_NEW_NAME :='JOB_BOOK_YUQI'||TO_CHAR(SYSDATE,'SS') ; --给新job命名
SELECT JOB_NAME INTO JOB_OLD_NAME FROM USER_SCHEDULER_JOBS WHERE JOB_NAME LIKE 'JOB_BOOK_YUQI%';
--检查数据库中已经存在的旧job,取出job_name 传给变量 job_old_name
IF JOB_OLD_NAME IS NOT NULL THEN
DBMS_OUTPUT.put_line('JOB_OLD_NAME IS '||JOB_OLD_NAME); --输出job_old_name 确认是否准确
DBMS_OUTPUT.put_line(JOB_OLD_NAME||' IS Being droped '||TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS'));
SYS.DBMS_SCHEDULER.DROP_JOB(JOB_NAME=> JOB_OLD_NAME); --删除job
END IF;
DBMS_OUTPUT.put_line('JOB_NEW_NAME IS '||JOB_NEW_NAME); --输出job_new_name 确认是否准确
DBMS_OUTPUT.put_line(JOB_NEW_NAME||' IS Being created '|| TO_CHAR(SYSDATE,'YYYY-MM-DD HH24:MI:SS'));
DBMS_SCHEDULER.CREATE_JOB(JOB_NAME => JOB_NEW_NAME, --指定job的名称
JOB_TYPE => 'STORED_PROCEDURE', --指定job操作的类型
JOB_ACTION => 'BOOK_YUQI', --指定job的操作
START_DATE => TO_DATE('20-08-2015 17:13:20', 'DD-MM-YYYY HH24:MI:SS'), --指定job开始运行的时间
REPEAT_INTERVAL => 'FREQ=MINUTELY;INTERVAL=1', --指定job运行的频率 ,常见的 daily、minutely
-- END_DATE => TO_DATE('21-08-2015 17:13:20', 'DD-MM-YYYY HH24:MI:SS'), --指定job结束运行的时间
JOB_CLASS => 'DEFAULT_JOB_CLASS', --指定job的级别
ENABLED => TRUE, --创建job后是否启用job
AUTO_DROP => FALSE, --job是否自动删除 (默认情况下 job运行成功后,会自动删除)
COMMENTS => 'MY NEW JOB');
EXCEPTION WHEN NO_DATA_FOUND THEN
DBMS_OUTPUT.PUT_LINE(SQLCODE||SQLERRM);
END CREATE_DROP_JOB_OK;
/
小试牛刀-嘿嘿,创建job了的更多相关文章
- C# -- HttpWebRequest 和 HttpWebResponse 的使用 C#编写扫雷游戏 使用IIS调试ASP.NET网站程序 WCF入门教程 ASP.Net Core开发(踩坑)指南 ASP.Net Core Razor+AdminLTE 小试牛刀 webservice创建、部署和调用 .net接收post请求并把数据转为字典格式
C# -- HttpWebRequest 和 HttpWebResponse 的使用 C# -- HttpWebRequest 和 HttpWebResponse 的使用 结合使用HttpWebReq ...
- mxonline实战-1,创建应用及相应模型
前言 环境说明:python3.5 + django2.0, 用的pycharm4.04专业版 课程视频地址 https://coding.imooc.com/learn/list/78. ...
- windows环境tomcat8配置Solr5.5.1
前言 前前后后接触Solr有一个多月了,想趁着学习Solr顺便把java拾起来.我分别用4.X和5.X版本在windows环境下用jetty的方式.tomcat部署的方式自己搭建了一把.其中从4.x到 ...
- NServiceBus入门:启程(Introduction to NServiceBus: Getting started)
原文地址:https://docs.particular.net/tutorials/intro-to-nservicebus/1-getting-started/ 侵删. 最好的学习NService ...
- Vue-router入门
1.npm install vue-router --save-dev 安装路由包,在安装脚手架时实际上可以直接安装 2.解读核心文件 router/index.js文件 import Vue fro ...
- node学习第一天
创建服务器 利用require引入http模块:var http=require("http") 利用http模块创建server服务器; 创建服务器:var server=htt ...
- js创建节点,小试牛刀
实现如下的功能 非常简单的一个小训练. 思想: 1.首先创建text和一个button 代码如下. <body> <input type="text" id=&q ...
- VS2015墙内创建ionic2 【利用nrm更换源,完美!】
STEP 1 设置cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org 一句话建立cnpm STEP 2 安装nr ...
- VS2015墙内创建ionic2
开始学习ionic2,试验各种方法,感觉以下是紧跟rc版本的最佳方案 STEP1 设置cnpm npm install -g cnpm --registry=https://registry.npm. ...
随机推荐
- Area
http://poj.org/problem?id=1265 #include<cstdio> #include<istream> #include<algorithm& ...
- 我的HttpClients工具
import java.io.IOException; import javax.ws.rs.core.MediaType; import org.apache.commons.httpclient. ...
- Linux Kernel 'MSR' Driver Local Privilege Escalation
本站提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负! // PoC exploit for /dev/cpu/*/msr, 32bit userland on a 64bit hos ...
- linux配置端口转发
一.使用rinted进行端口转发 将10.50.13.13 80请求转到10.50.13.11 80上 1.安装rinetd $ tar zxf rinetd.tar.gz $ cd rinetd $ ...
- Ganglia监控搭建
一.Ganglia介绍: Ganglia是一个监控服务器.集群的开源软件,能够用曲线图表现最近一个小时,最近一天,最近一周,最近一月,最近一年的服务器或者集群的cpu负载,内存,网络,硬盘等指标.Ga ...
- POJ 3436 ACM Computer Factory
题意: 为了追求ACM比赛的公平性,所有用作ACM比赛的电脑性能是一样的,而ACM董事会专门有一条生产线来生产这样的电脑,随着比赛规模的越来越大,生产线的生产能力不能满足需要,所以说ACM董事会想 ...
- 读取App.config自定义标签的值
一:程序截图 二:具体代码 config配置: <?xml version="1.0" encoding="utf-8" ?> <config ...
- 2012蓝桥杯本科组C/C++决赛题
星期几 [结果填空] (满分5分) 1949年的国庆节(10月1日)是星期六. 今年()的国庆节是星期一. 那么,从建国到现在,有几次国庆节正好是星期日呢? 只要答案,不限手段! 可以用windows ...
- FZU 2113 Jason的特殊爱好
题意: 给定区间[a,b],求将区间中所有数写在黑板上,要写的数字‘1’的次数.(1 <= a,b <= 10^8) 解法: 将题转化成f(b+1) - f(a)的形式.普通的数位DP. ...
- Assumptions
理想情况下,写测试用例的开发人员可以明确的知道所有导致他们所写的测试用例不通过的地方,但是有的时候,这 些导致测试用例不通过的地方并不是很容易的被发现,可能隐藏的很深,从而导致开发人员在写测试用例时很 ...