分类: Oracle
2010-08-29 16:16:41
|
二、在PLSQL中创建存储过程:
|
三、在SQL命令窗口中启动任务:
在SQL>后执行:
|
提交后提示:
|
四、跟踪任务的情况(查看任务队列):
|
说明有一个任务存在了。
执行select * from test t查看定时任务的结果。可以看出定时任务是正常执行了的。
五、停止已经启动的定时任务:
先执行select job,next_date,next_sec,failures,broken from user_jobs;
以查看定时任务的job号。
在SQL>中执行下面的语句停止一个已经启动的定时任务:
|
表示停止job为1的任务。
执行后显示如下:
|
六、查看进程数:
|
七、再创建一个任务(每5分钟执行一次):
|
建立一个定时任务后,在PLSQL中查看JOB,它的sql语句类似的是如下:
|
八、 执行select job,next_date,next_sec,failures,broken from user_jobs;
结果:
|
chinaunix网友2010-12-13 09:49:26
众所周知,一般操作系统会提供定时执行任务的方法,例如:Unix平台上提供了让系统定时执行任务的命令Crontab。但是,对于某些需求,例如:一些对数据库表的操作,最为典型的是证券交易所每日收盘后的结算,它涉及大量的数据库表操作,如果仍然利用操作系统去定时执行,不仅需要大量的编程工作,而且还会出现用户不一致等运行错误,甚至导致程序无法执行。 一、分析问题 事实上,对于以上需求,我们可以利用数据库本身拥有的功能Job Queue(任务队列管理器)去实现。任务队列管理器允许用户提前调度和安排某一任务,使其能在指定的时间点或时间段内自动执行一次或多次,由于任务在数据库中被执行,所以执行效率很高。 任务队列管理器允许我们定制任务的执行时间,并提供了灵活的处理方式,还可以通过配置,安排任务在系统用户访问量少的时段内执行,极大地提高了工作效率。例如,对于数据库日常的备份、更新、删除和复制等耗时长、重复性强的工作,我们就可以利用任务队列管理器去自动执行以减少工作量。 目前,拥有此项功能的数据库有许多,最有代表性的是SQL Server 7.0、Oracle