oracle 定时任务(DBMS_JOB)】的更多相关文章

author:skate time:2007-09-12 http://publish.it168.com/2006/0311/20060311017002.shtml 今天总结下Oracle的任务队列管理器(job queue ),以后也方便查询. 我们要做定时任务时,有两种办法 一种是: 操作系统的定时,win的定时任务,unix的crontab一种是: 数据库级的定时,她的效率更高, 再有大量的表级操作时,建议用数据库本身的job queue,这样方便,效率高;如果用系统级定时,会增加很多…
一.概述 Oralce中的任务有2种:Job和Dbms_job,两者的区别有: 1.  jobs是oracle数据库的对象, dbms_jobs只是jobs对象的一个实例, 就像对于tables, emp和dept都是表的实例. 2.  创建方式也有差异,Job是通过调用dbms_scheduler.create_job包创建的,Dbms_job则是通过调用dbms_job.submit包创建的. 3.  两种任务的查询视图都分为dba和普通用户的,Job对应的查询视图是dba_schedule…
本文来源:Ruthless <oracle数据库定时任务dbms_job的用法详解> 一.dbms_job涉及到的知识点   1.创建job: variable jobno number; dbms_job.submit(:jobno, —-job号 'your_procedure;',—-执行的存储过程, ';'不能省略 next_date, —-下次执行时间 'interval' —-每次间隔时间,interval以天为单位 ); –系统会自动分配一个任务号jobno. 2.删除job d…
       在Oracle的包里面,有一个名字叫做DBMS_JOB的包,它的作用是安排和管理作业队列.通过作业队列,可以让Oracle数据库定期执行特定的任务.当使用DBMS_JOB管理作业的时候,必须确保设置了初始化参数JOB_QUEUE_PROCESSES(不能为0). 1. SUBMIT 该过程用于建立一个新的作业,当建立作业的时候,需要通过设置相应的参数来告诉Oracle要执行的内容,要执行的时间,要执行任务的间隔.如下格式: DBMS_JOB.SUBMIT( JOB OUT BINA…
最简单的一个Oracle定时任务一.在PLSQL中创建表:create table HWQY.TEST(CARNO     VARCHAR2(30),CARINFOID NUMBER) 二.在PLSQL中创建存储过程:create or replace PRocedure pro_testAScarinfo_id number;BEGINselect s_CarInfoID.nextval into carinfo_idfrom dual;insert into test(test.carno,…
一.简介 当我们需要oracle数据库定时自动执行一些脚本,或进行数据库备份.数据库的性能优化,包括重建索引等工作是需要使用到定时任务. 定时任务可以使用以下两种完成. 1.操作系统级的定时任务,win的定时任务,unix的crontab 2.数据库级的定时任务. 相对来说,数据库的定时任务效率会更高. oracle的定时任务:使用oracle定时任务时,需要使用到oracle中dbms_job.submit函数. DBMS_JOB过程的公共参数 Job BINARY_INTEGER 任务的唯一…
说明:请在plsql工具的命令窗口中,依次按步骤执行如下脚本   (1)建立备份表 my_test_log2create table my_test_log2 as select * from my_test_log t where 1=2; (2)创建索引create index ind_userId on my_test_log2(userId); (3)创建存储过程:每天移植数据到my_test_log2 CREATE OR REPLACE PROCEDURE MV_MY_TEST_LOG…
业务需求是:二元化编号规则:RYH+年月+001(开始),按月计算,每月1号重置为001 数据库中已有序列和函数如下: 解决方法:采用Oracle定时任务,每月1号重置该序列从1开始增长,SQL如下: select GET_RYH_NO from dual; select SEQ_RYH_NO_ID.NEXTVAL from dual; select * from user_jobs;/*查询定时任务*/ /*新建每月01号重置二元化序列为1起始的存储过程*/ CREATE OR REPLACE…
一.Oracle定时任务基础 简介 oracle job 是应用在数据库层面,用来定时执行存储过程或者 SQL 语句的定时器. 查询 --当前库中运行的 job SELECT t.* FROM dba_jobs t 创建 (1)SQL语句执行创建 declare job number; BEGIN DBMS_JOB.SUBMIT( JOB => job, /*自动生成JOB_ID*/ WHAT =>'PRO_USER_ORDER(to_char(SYSDATE,'yyyyMMdd'));',…
定时任务应用场景: 某一个生产系统上面,临时表不断变多,占了不少磁盘空间.由于这套软件是直接买的,不方便修改源代码.所以考虑使用Oracle定时任务直接从数据库层删除临时表. 定时任务业务: 首先写好一个存储过程.读当前用户所有以tempXXXXX开头的临时表,然后依次删除所有的临时表.然后在建立Oracle Job每天晚上定时调用这个存储过程. 存储过程代码: create or replace PROCEDURE KDDROPTEMPTABLE AS BEGIN  declare  curs…