Oracle Scheduler(3)调用批处理

本文介绍如何通过Oracle Scheduler创建任务,定时执行批处理文件,实现数据表的自动填充。具体步骤包括创建数据表、编写SQL脚本、设置批处理文件及利用Oracle Scheduler进行任务调度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Oracle Scheduler调用批处理(2

 

(一)用system用户创建一个表

create table test20151021(id int);

 

(二)在D盘根目录下创建test.sql,内容为

declare

  i int;

begin

  for i in 1..5

  loop

    insert into test20151021 values(i);

  end loop;

  commit;

end;

/

 

 

(三)在D盘根目录下创建test.bat,内容为

sqlplus system/oracle@local @D:\test.sql

 

注意:这里@D:\test.sql建议写成全路径,而不要使用相对当前路径@test.sql。原因是假如直接双击执行test.bat,因为test.sqltest.bat都位于同一路径(D盘根目录)下,@test.sql等价于@D:\test.sql。但是如果使用PLSQL Developer来执行下一步骤时,当前路径就不再是D盘根目录了,这个时候@test.sql不等于@D:\test.sql,也就无法往test20151021里插入数据。

 

(四)用Oracle Scheduler创建Job来调用test.bat

BEGIN 

  DBMS_SCHEDULER.CREATE_JOB ( 

    job_name         => 'test_job', 

    job_type          => 'EXECUTABLE', 

    job_action        => 'D:\test.bat', 

    start_date         => sysdate, 

    repeat_interval => 'FREQ=MINUTELY;INTERVAL=1',

    enabled      => TRUE); 

END;

/

 

这里start_daterepeat_interval两个参数决定了每隔一分钟执行一次批处理,第一次是立刻执行

job_type目前支持三种类型

PLSQL_BLOCKPL/SQL 

STORED_PROCEDURE,存储过程

EXECUTABLE,外部程序可以是一个shell或批处理脚本,也可以是操作系统级别的指令 

  

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29485627/viewspace-1815841/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29485627/viewspace-1815841/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值