业务需求,需要与A公司做数据对接,我们公司用的Oracle,A公司用的SQL Server数据库,如何跨数据库建立连接呢?这里使用的是DBLink,不会配置的请看我的另外一篇博客:https://www.cnblogs.com/chenyanbin/p/11291752.html

  如果做数据同步呢?上面我们已经通过DBLink与SQL Server建立连接了,那么我们就可以获取A公司表中的数据。在通过Oracle Job定时任务,具体JOB还有那些功能,这里不做详细介绍了,百度上一大堆,这里我们只讲解Oracle Job创建步骤。

  我们已经知道job是一个定时任务,也就是说可以在一个规定的时间内,执行某一项任务,这个任务就是“存储过程”。

第一步:先创建存储过程(做一个简单DEMO往一张表插入当前时间)

 create or replace procedure proc_add_test as
begin
insert into test values (to_char(sysdate, 'yyyy-mm-dd hh:mi'));/*向测试表插入数据*/
commit; /*提交*/
end; create or replace procedure 存储过程名称 as
begin
/*业务逻辑片段*/
end;

第二步:创建Oracle Job定时任务,实现每隔多长时间调用存储过程

 declare
job number; /*job:定时器名称*/
BEGIN
DBMS_JOB.SUBMIT(
JOB => job, /*自动生成JOB_ID*/
WHAT => 'proc_add_test;', /*需要执行的存储过程名称或SQL语句*/
NEXT_DATE => sysdate+/(*), /*初次执行时间-下一个3分钟*/
INTERVAL => 'trunc(sysdate,''mi'')+1/(24*60)' /*每隔1分钟执行一次*/
);
commit;
end;

搞定,到目前为止,一个简单的Oracle Job已经创建好了,

job基本用法!!!

1、查询job信息

 SELECT * FROM user_jobs;

字段介绍

2、停止Oracle Job任务

 begin
dbms_job.broken(, true, sysdate);
commit;
end; 语法:
begin
dbms_job.broken(任务的唯一标识符, true, sysdate);
commit;
end;

3、启用Oracle Job任务

 begin
dbms_job.run();
end; 语法:
begin
dbms_job.run(任务的唯一标识符);
end;

4、删除定时器

 begin
dbms_job.remove();
commit;
end; begin
dbms_job.remove(任务的唯一标识符);
commit;
end;

5、INTERVAL参数常用值示例

 每天午夜12点            ''TRUNC(SYSDATE + )''
每天早上8点30分 ''TRUNC(SYSDATE + ) + (*+)/(*)''
每星期二中午12点 ''NEXT_DAY(TRUNC(SYSDATE ), ''''TUESDAY'''' ) + /''
每个月第一天的午夜12点 ''TRUNC(LAST_DAY(SYSDATE ) + )''
每个季度最后一天的晚上11点 ''TRUNC(ADD_MONTHS(SYSDATE + /, ), ''Q'' ) -/''
每星期六和日早上6点10分 ''TRUNC(LEAST(NEXT_DAY(SYSDATE, ''''SATURDAY"), NEXT_DAY(SYSDATE, "SUNDAY"))) + (6×60+10)/(24×60)''
每3秒钟执行一次 'sysdate+3/(24*60*60)'
每2分钟执行一次 'sysdate+2/(24*60)' :每分钟执行
Interval => TRUNC(sysdate,'mi') + / (*) --每分钟执行
interval => 'sysdate+1/(24*60)' --每分钟执行
interval => 'sysdate+1' --每天
interval => 'sysdate+1/24' --每小时
interval => 'sysdate+2/24*60' --每2分钟
interval => 'sysdate+30/24*60*60' --每30秒
:每天定时执行
Interval => TRUNC(sysdate+) --每天凌晨0点执行
Interval => TRUNC(sysdate+)+/ --每天凌晨1点执行
Interval => TRUNC(SYSDATE+)+(*+)/(*) --每天早上8点30分执行
:每周定时执行
Interval => TRUNC(next_day(sysdate,'星期一'))+/ --每周一凌晨1点执行
Interval => TRUNC(next_day(sysdate,))+/ --每周一凌晨2点执行
:每月定时执行
Interval =>TTRUNC(LAST_DAY(SYSDATE)+) --每月1日凌晨0点执行
Interval =>TRUNC(LAST_DAY(SYSDATE))++/ --每月1日凌晨1点执行
:每季度定时执行
Interval => TRUNC(ADD_MONTHS(SYSDATE,),'q') --每季度的第一天凌晨0点执行
Interval => TRUNC(ADD_MONTHS(SYSDATE,),'q') + / --每季度的第一天凌晨1点执行
Interval => TRUNC(ADD_MONTHS(SYSDATE+ /,),'q')-/ --每季度的最后一天的晚上11点执行
:每半年定时执行
Interval => ADD_MONTHS(trunc(sysdate,'yyyy'),)+/ --每年7月1日和1月1日凌晨1点
:每年定时执行
Interval =>ADD_MONTHS(trunc(sysdate,'yyyy'),)+/ --每年1月1日凌晨1点执行

Oracle Job定时任务详解、跨数据库数据同步的更多相关文章

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

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

  2. oracle表分区详解

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

  3. Oracle权限管理详解

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

  4. Oracle执行计划详解

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

  5. oracle rac IP详解

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

  6. Oracle AWR 报告详解

    转自:http://blog.csdn.net/laoshangxyc/article/details/8615187 持续更新中... Oracle awr报告详解 DB Name DB Id In ...

  7. Oracle表空间详解

    Oracle表空间详解 1.表空间的分类 Oracle数据库把表空间分为两类:系统表空间和非系统表空间. 1.1系统表空间指的是数据库系统创建时需要的表空间,这些表空间在数据库创建时自动创建,是每个数 ...

  8. [转]Oracle执行计划详解

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

  9. Oracle建立全文索引详解

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

随机推荐

  1. Java面试总结(一)

    1.equals和==和hashcode “==”是运算符,比较两个变量的值是否相等   equals是Object类的方法.比较两个对象是否相等   hashcode是Object类的方法,返回一个 ...

  2. Zimg—轻量级图片服务器搭建利器

    在一个互联网应用中,图片扮演着越来越重要的角色.有稳定的可扩展的图片存储服务器就显得尤为的重要,云厂商们提供了便利的图片存储服务,花钱就可以解决了.这里简单介绍一个开源的一个分布式图片存储服务器--z ...

  3. Java集合对象比对

    1. 场景描述 通过java代码从外围接口中获取数据并落地,已经存在的不落地,不存在的落地,因有部分字段变化是正常的,只需比对3个字段相同即为相同. 2. 解决方案 设置定时任务(三个标签完成spri ...

  4. 剑指offer第二版-总结:二叉树的遍历

    思想:前序(根左右),中序(左根右),后序(左右根) 前序非递归遍历: 首先判断根是否为空,将根节点入栈 1.若栈为空,则退出循环 2.将栈顶元素弹出,访问弹出的节点 3.若弹出的节点的右孩子不为空则 ...

  5. android_layout_relativelayout(二)

    官网上的一个xml文件: <?xml version="1.0" encoding="utf-8"?><RelativeLayout xmln ...

  6. 基础篇-1.2Java世界的规章制度(上)

    1 Java标识符 在Java语言中,有类.对象.方法.变量.接口和自定义数据类型等等,他们的名字并不是确定的,需要我们自己命名.而Java标识符就是用来给类.对象.方法.变量.接口和自定义数据类型命 ...

  7. ADO.NET_包括DataReader和dataSet的使用

    今天总结了一下ADO.NET编程中DataReader和dataSet两个比较重要的对象的使用,完成了combobox,listbox,以及fpSpread动态添加数据的测试,对使用sqlComman ...

  8. 个人永久性免费-Excel催化剂功能第92波-地理地址与经纬度互转功能

    GPS设备和手机LBS的兴起,在地理信息存储过程中,在程序.应用级别是需要用经纬度去定位,而在数据分析的级别,特别是省市区镇街的分析,用到的是人可识别的文本类型存储,从设备中采集下来的数据和人工维护的 ...

  9. 网络框架,互联网的组成,OSI七层协议,抽象层

    6.25自我总结 1.网络框架 1.单机 单机游戏 以下两个基于网络的 2.CS架构 cs--->client客户/server服务 服务端(应用程序)一个就够了,客户端(应用程序)可以有多个 ...

  10. MyBatis 中 @Param 注解的四种使用场景,最后一种经常被人忽略!

    有一些小伙伴觉得 MyBatis 只有方法中存在多个参数的时候,才需要添加 @Param 注解,其实这个理解是不准确的.即使 MyBatis 方法只有一个参数,也可能会用到 @Param 注解. 但是 ...