其中一篇随笔我写了oracle的存储过程大概的介绍,存储过程除了自身有in的param,来进行程序调用处理之外,还可以通过定时任务的方式调用来执行。

应用场景:

  数据同步:有两个显示菜单,“信息编辑”,“信息查看”。前一个是面向员工随时填写、查看的,因此数据必须是实时的,而大部分开发场景下,这些数据不是只存在一张表内的,而是多表进行关联,这样速度会稍微慢些,但是是保证数据实时的;而后者的菜单时面向领导的,领导要求查看到的信息是大致准确的就可以,因此要做一个定时的任务,在半夜或者使用量的低谷期进行数据同步。

常用参数:

字段(列)                          类型                           描述 
JOB                                NUMBER                  任务的唯一标示号 
LOG_USER                     VARCHAR2(30)            提交任务的用户 
PRIV_USER                     VARCHAR2(30)           赋予任务权限的用户 
SCHEMA_USER                   VARCHAR2(30)          对任务作语法分析的用户模式 
LAST_DATE                      DATE                最后一次成功运行任务的时间 
LAST_SEC                      VARCHAR2(8)         如HH24:MM:SS格式的last_date日期的小时,分钟和秒 
THIS_DATE                 DATE                正在运行任务的开始时间,如果没有运行任务则为null 
THIS_SEC                 VARCHAR2(8)         如HH24:MM:SS格式的this_date日期的小时,分钟和秒 
NEXT_DATE                     DATE                  下一次定时运行任务的时间 
NEXT_SEC                     VARCHAR2(8)         如HH24:MM:SS格式的next_date日期的小时,分钟和秒 
TOTAL_TIME                   NUMBER                该任务运行所需要的总时间,单位为秒 
BROKEN                       VARCHAR2(1)           标志参数,Y标示任务中断,以后不会运行 
INTERVAL                     VARCHAR2(200)         用于计算下一运行时间的表达式 
FAILURES                   NUMBER               任务运行连续没有成功的次数 
WHAT                           VARCHAR2(2000)            执行任务的PL/SQL块 
CURRENT_SESSION_LABEL RAW          MLSLABEL           该任务的信任Oracle会话符 
CLEARANCE_HI              RAW MLSLABEL     该任务可信任的Oracle最大间隙 
CLEARANCE_LO                RAW              MLSLABEL 该任务可信任的Oracle最小间隙 
NLS_ENV                   VARCHAR2(2000)   任务运行的NLS会话设置 
MISC_ENV                  RAW(32)          任务运行的其他一些会话参数

描述                                          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)'

--查询
select * from dba_jobs;
select * from all_jobs;
select a.*,rowid from user_jobs a;
select * from dba_jobs_running;
-- 创建job
declare
job_id number;--声明一个out变量
begin
-- 按天,每天09:30:00执行这个存储过程proc_myproc,并且输出一个job_id变量,其值为该job的ID号
dbms_job.submit(
job_id, --参数是输出参数,由submit()过程返回的binary_ineger,这个值用来唯一标识一个工作。一般定义一个变量接收,可以去user_jobs视图查询job值。
'sap_salesrep_info_v_p;', --参数是将被执行的PL/SQL代码块,存储过程名称等。
sysdate, --参数指识何时将运行这个工作。
'trunc(sysdate,''mi'') + 1/ 144' --参数何时这个工作将被重执行。
);
-- 把job的ID号打印出来
dbms_output.put_line(job_id);
end;
-- 运行job
begin
-- 这个7为job_id,请换为你自己对应的job号
dbms_job.run(7);
end;
-- 启用job
begin
dbms_job.broken(7,false);
end;
-- 禁用job
begin
dbms_job.broken(7,true);
end;
-- 删除一个job
begin
dbms_job.remove(375);
end;

oracle定时job粗解的更多相关文章

  1. Oracle建立全文索引详解

    Oracle建立全文索引详解1.全文检索和普通检索的区别 不使用Oracle text功能,当然也有很多方法可以在Oracle数据库中搜索文本,比如INSTR函数和LIKE操作: SELECT *FR ...

  2. Oracle执行计划详解

    Oracle执行计划详解 --- 作者:TTT BLOG 本文地址:http://blog.chinaunix.net/u3/107265/showart_2192657.html --- 简介:   ...

  3. Oracle定时计划快速使用

    Oracle定时计划快速使用 前言: SQL Server中有相关的定时计划,可以直接打开sql server 的任务管理器进行配置,可以方便.快速实现定时执行相应任务.相应的Oracle也有对应的定 ...

  4. oracle表分区详解

    原文来自:http://www.cnblogs.com/leiOOlei/archive/2012/06/08/2541306.html oracle表分区详解 从以下几个方面来整理关于分区表的概念及 ...

  5. Oracle权限管理详解

    Oracle权限管理详解 转载--CzmMiao的博客生活 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级. ...

  6. Java从入门到精通——数据库篇Oracle 11g服务详解

    装上Oracle之后大家都会感觉到我们的电脑慢了下来,如何提高计算机的速度呢?我们应该打开必要的服务,关闭没有用的服务.下面是Oracle服务的详解: Oracle ORCL VSS Writer S ...

  7. oracle rac IP详解

    rac环境下vip/public/private IP的区别 每个节点要2块网卡, 3个IP,虚拟IP或者叫做业务IP,单个网卡当掉可以“漂”到其他网卡是继续提供服务 在Oracle RAC环境下,每 ...

  8. oracle tkprof 工具详解

    oracle  tkprof 工具详解 今天是2013-09-26,进行tkprof工具使用学习,在此记录一下笔记: 一)查看需要跟踪会话信息: select s.sid,s.serial#,s.us ...

  9. oracle定时备份与删除N天前备份文件

    oracle定时备份数据库,以及删除7天前备份的数据. 1.创建存放备份目录: mkdir /home/oracle/data_backup mkdir /home/oracle/log_backup ...

随机推荐

  1. 【Java-Method】读《重构》有感_Java方法到底是传值调用还是传引用调用(传钥匙调用)

    今天读<重构>P279, Separate Query from Modifier,将查询函数和修改函数分离. 问题的产生 突然想到 Java 的传对象作为参数的方法到底是 传引用调用,还 ...

  2. FAT32中文版分析+补充(1)

    概述 起先所有的FAT文件系统都是为IBM PC机器而设计的,这说明了一个重要的问题:FAT文件系统在磁盘上的数据是用“小端”(Little Endian)结构存储的.我们使用4个8-bit的字节—— ...

  3. 基于LNMP环境的ssh2扩展

    openssl: 加密算法集合,C语言实现 libssh2:ssh2协议库库,C语言实现 PECL/ssh2: libssh2的php扩展,允许php程序调用libssh2中的函数 依赖关系:PECL ...

  4. 汇编:实现C语言的 ||与&&运算

    ;C程序转汇编(或运算链接) DATAS SEGMENT a Dw b dw cc dw d dw m dw n dw string db dup(?) DATAS ends CODES SEGMEN ...

  5. 动态代理和AOP

    之前说过了我对IOC的理解,这篇文章说以下我对动态代理和基本的对AOP的理解. 所谓动态代理就是,在运行时,动态创建实现了一组指定接口的实现类对象. 比如有: interface A { } inte ...

  6. OSI七层模型 学习摘要

    OSI参考模型是计算机网路体系结构发展的产物.它的基本内容是开放系统通信功能的分层结构.这个模型把开放系统的通信功能划分为七个层次,从邻接物理媒体的层次开始,分别赋于1,2,……7层的顺序编号,相应地 ...

  7. win8电脑字体出现方格的解决方法

    一般电脑出现乱码有几种可能,最常见的可能就是电脑字体的丢失,其次就是电脑字体被病毒所损坏,因此,首先我们要做的就是下载字体并进行安装. 下载 simsun.tcc点击安装,如果电脑字体依然是这种情况( ...

  8. linux基础命令2(ls,cd)

    ls:显示文件内的文件和目录 文件的类型: -普通文件 d目录文件(directory) l链接文件(symbolic link file) c 字符设备文件(char) b 块设备文件(block) ...

  9. linux select用法

    select 是linux i/o 复用技术之一 man 2 select #include <sys/select.h> /* According to earlier standard ...

  10. python使用网易邮箱发邮件

    # -*- coding: UTF-8 -*- import smtplib from email.mime.text import MIMEText import email.mime.multip ...