oracle怎么定时器 oracle定时器执行语句

怎么在oracle中做定时器呢?

创建scheduler,PL/SQL Developer里可以直接创建,也可以写SQL创建,类似以下语法:

高坪网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设公司等网站项目制作,到程序开发,运营维护。成都创新互联公司于2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

begin

sys.dbms_scheduler.create_schedule(schedule_name = 'FRQ_CATALOG.TT',

start_date = to_date('18-10-2011 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),

repeat_interval = 'Freq=Daily;Interval=0',

end_date = to_date('31-10-2011 00:00:00', 'dd-mm-yyyy hh24:mi:ss'),

comments = '');

end;

如果懂了希望点一下采纳

oracle定时器怎么使用

那是自动任务创建job,你这里具体怎么改表没说,我就大致举个例子declare

jobno number;

begin

dbms_job.submit(jobno,'begin update table1 set a=''test''; end;',trunc(sysdate)+1,'trunc(sysdate)+1');

end;

这里第一个参数是任务编号,系统自动赋值。也可以采用isubmit来手动指定第二个参数是需要执行的任务过程,代码长的话,可以将它写到一个存储过程里,再放到里面调用,比如'pro_test;' (pro_test假定为一个存储过程名)第三个参数是,自动任务第一次执行的时间,如果需要它立即执行,则使用sysdate最后一个参数,系统根据该参数的值指定下一次的执行时间。如果需要每天0点执行,就用我上面写的 创建好job后,可以在all_jobs中查询它的状态不需要时,使用dbms_job.remove来移除。dbms_job.broken可以用来停止和启动任务

怎样实现每天自动执行oracle的存储过程一次?

用job

oracle定时器调用存储过程

1、创建一个表,为了能清楚看到定时器的运行情况我们创建一个带有日期字段的表

Sql代码  

create table job_table(run_time date);  

create table job_table(run_time date);

2、创建存储过程

Sql代码  

create or replace procedure job_proc is  

begin

insert into job_table (run_time) values (sysdate);  

end;  

create or replace procedure job_proc is

begin

insert into job_table (run_time) values (sysdate);

end;

3、创建job,并且指定为一分钟执行一次

Sql代码  

declare

job number;  

begin

dbms_job.submit(job, 'job_proc;', sysdate, 'TRUNC(sysdate,''mi'') + 1 / (24*60)');  

end/  

commit;  

declare

job number;

begin

dbms_job.submit(job, 'job_proc;', sysdate, 'TRUNC(sysdate,''mi'') + 1 / (24*60)');

end/

commit;

4.创建之后自动处于运行状态,我们查询job表,看看我们创建的job

Sql代码  

select job,broken,what,interval,t.* from user_jobs t;  

select job,broken,what,interval,t.* from user_jobs t;

job broken what interval ...

81 N job_proc; TRUNC(sysdate,'mi') + 1 / (24*60) ...

用job

oracle定时器调用存储过程

创建一个表,为了能清楚看到定时器的运行情况我们创建一个带有日期字段的表

Sql代码  

create table job_table(run_time date);  

create table job_table(run_time date);

2.创建存储过程

Sql代码  

create or replace procedure job_proc is  

begin

insert into job_table (run_time) values (sysdate);  

end;  

create or replace procedure job_proc is

begin

insert into job_table (run_time) values (sysdate);

end;

3.创建job,并且指定为一分钟执行一次

Sql代码  

declare

job number;  

begin

dbms_job.submit(job, 'job_proc;', sysdate, 'TRUNC(sysdate,''mi'') + 1 / (24*60)');  

end/  

commit;  

declare

job number;

begin

dbms_job.submit(job, 'job_proc;', sysdate, 'TRUNC(sysdate,''mi'') + 1 / (24*60)');

end/

commit;

4.创建之后自动处于运行状态,我们查询job表,看看我们创建的job

Sql代码  

select job,broken,what,interval,t.* from user_jobs t;  

select job,broken,what,interval,t.* from user_jobs t;

job broken what interval ...

81 N job_proc; TRUNC(sysdate,'mi') + 1 / (24*60) ...

oracle设置定时器怎么让它自动调用JAVa接口

在web.xml配置一个servlet设置启动顺序优先级高些(说白了就是web服务启动时调用这个类)

servlet

servlet-namet1/servlet-name

servlet-classcom.base.test.T1/servlet-class

!-- 如果需要自动加载,加下面一句 --

load-on-startup1/load-on-startup

/servlet

在这个T1类中的初始化方法ini中写一个Timer类,按shcedule 定时去执行那个业务方法即可。

如何使用plsql工具创建oracle数据库的定时器

通过plsql查看tables、views等文件夹,找到定时器对应的DBMS_Jobs文件夹。

在文件夹或者在已有的定时器上右键 new... 创建一个新的job(定时器)

输入红色选中的必输参数。What里面是一些存储过程,可以是一个或者多个。多个之间用分好;隔开,可以数据一下注释说明,格式“/*存过说明*/。点击应用即可保存。点击View SQL可以查看job对应的sql脚本。

如果想查看一些脚本,处理通过打开文件夹的方式,也可以使用更方便的sql语句进行查看。

SELECT * FROM dba_jobs;

注意,如果next_date是4000-1-1表示这个脚本已经是停止状态。

如果想查询某个存储过程对应的哪个job可以通过dba_jobs表中what字段根据条件查询查看job.

dba_jobs中的job字段对应的值就和DBMS_Jobs中对应的数字是一致的,可以对信息进行修改更新。

oracle 时间标记,定时器

你的另一个问题不是有人说过了么?不需要删除,只需要增加一个时间标志字段记录订单的产生时间。判断订单有效的时候加一个判断就是了,如果需要查询,查询条件增加对时间的判断,在时间标志字段上建立索引就好。

如果实在需要删除的,那么也是应该通过定时任务来批量删除,可以用oracle_job,也可以用脚本/程序配合系统的定时任务功能(例如Linux的cron或者at,Windows的任务计划管理)来实现。每条记录都调用触发器,性能消耗很大的。


网页题目:oracle怎么定时器 oracle定时器执行语句
文章位置:http://cdiso.cn/article/hehsse.html

其他资讯