`
jordan_micle
  • 浏览: 245163 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

利用JOB定时执行存储过程

 
阅读更多

一、

首先还是得有个存储过程,假如名称是myproc。

 

二、

建立JOB,在 SQL行 下:

VARIABLE JOB_NO NUMBER;
begin
  dbms_job.submit(:JOB_NO,
                  'myproc;',
                  sysdate,
                  'sysdate+1/1440');
commit;
end;

其中JOB_NO是该作业的唯一标识,这里由系统生成。
存储过程名后面要接一个分号。
sysdate+1/1440表示每分钟执行一次。

如果想定在某个时间执行,例如隔N 天的M 点执行。

则为TRUNC(SYSDATE+N )+M *60/(24*60)。

 

三、

查看数据库中的JOB:

SELECT * FROM dba_jobs;

其中what 字段表示作业需要执行的存储过程名称。

 

四、

根据JOB ID删除JOB:

begin
	dbms_job.remove(jobid);
	commit;
end;

必须在命令行 下执行。

 

五、

根据JOB ID停止JOB:

 

 

SQL> execute dbms_job.broken(702, true);
PL/SQL procedure successfully completed
SQL> commit;
Commit complete

其中的702就是JOB ID,要commit。必须在命令行下执行。

 

 

 

 

 

 

分享到:
评论
4 楼 jordan_micle 2011-02-22  
aifine 写道
假如我需要停止这个JOB该怎么处理呢?

1、查看所有job;
select * from dba_jobs;
2、查看正在运行的job;
select * from dba_jobs_running;
3、根据sid查出对应的session;
select SID,SERIAL# from V$Session where SID='&SID';
4、kill对应的session;
alter system kill session '&SID,&SERIAL';
5、将job置为broken;
exec dbms_job.broken('&JOB',true);
6、sysdba用户权限删除job;
delete from dba_jobs where JOB='&JOB';
3 楼 aifine 2011-02-22  
假如我需要停止这个JOB该怎么处理呢?
2 楼 jordan_micle 2010-12-31  
韩海涛 写道
如果我想每天早上七点执行一次存储过程的话 如何写啊
还有就是 用作业 每天七点它就会自己执行么?


job的作用就是可以让指定的存储过程每天按时自动执行
每天的7点可以这样写:sysdate+1+7/24
1 楼 韩海涛 2010-12-30  
如果我想每天早上七点执行一次存储过程的话 如何写啊
还有就是 用作业 每天七点它就会自己执行么?

相关推荐

    oracle 自动执行存储过程

    ### Oracle自动执行存储过程 #### 一、背景与需求 在很多实际应用场景中,我们可能会遇到需要定时执行某些任务的情况,比如数据清理、备份、统计分析等。在Oracle数据库环境中,可以通过创建定时任务来实现对特定...

    job定时器操作存储过程

    通过上述内容,我们可以看到Oracle JOB定时器的强大功能,它不仅能够自动执行存储过程,还支持多种复杂的时间间隔设置,极大地提高了数据库管理的效率和自动化程度。在实际应用中,根据业务需求灵活调整JOB的执行...

    oracle的job定时

    1. **定义存储过程**:首先,我们需要编写一个存储过程来封装要定时执行的操作。例如,如果要每天创建一个新的表来记录更新的节目信息,我们可以创建一个名为`sp_createtab_tbl_programme`的存储过程。在这个存储...

    oracle 定时任务,使用存储过程更新数据

    在本主题中,我们将深入探讨如何利用Oracle的存储过程来创建和管理定时任务。 首先,Oracle中的定时任务通常通过“调度器”(DBMS_SCHEDULER)来实现。这个包提供了丰富的功能,允许用户定义任务、设置执行时间、...

    job(oracle定时任务)界面管理工具

    这个包包含了多种过程和函数,如CREATE_JOB、RUN_JOB等,可以用来设置任务的执行频率、开始时间、结束时间、是否重复以及执行的具体PL/SQL代码或存储过程。 2. **JOB CLASS**: Job Class是用来定义任务执行环境的,...

    定时调度器xxl_job完整代码

    XXL-JOB 的任务调度支持多种策略,包括简单定时、Cron表达式定时、固定延时和周期性执行等。其中,Cron表达式定时是常用的策略,可以使用标准的Unix Cron表达式来定义任务的执行时间。 【任务分发与执行】 当任务...

    Oracle利用job和dblink高级数据库同步技术

    通过Oracle Job的定时执行和DBLink的远程数据库访问能力,可以确保即使在分布式环境中,数据也能保持高度一致,大大提高了业务的可靠性和效率。 总结来说,Oracle的Job和DBLink是强大的数据库管理工具,通过合理...

    Oracle存储过程调测及job使用指导

    而job则是Oracle数据库中的一种定时任务机制,用于按照预设的时间间隔执行指定的存储过程或其他PL/SQL代码。 对于存储过程的调测,首先要了解存储过程的基本结构。Function通常用于计算并返回单一值,而Procedure则...

    Oracle存储过程定时进行调度的方法.doc

    例如,创建一个Job,名为`job_16`,执行存储过程`test`,设定下次执行时间为2009年11月16日19:28:03,每12小时执行一次: ```sql begin sys.dbms_job.change(job => 16, what => 'test;', next_date => to_date('...

    SQL Server 2000定时计划job

    之后,我们创建两个作业(job),job1和job2,分别对应执行存储过程sp_depflt1和sp_depflt2。在“管理”>“SQL SERVER代理”>“作业”中,按照新建作业的步骤设置作业常规、作业步骤,并指定执行存储过程的命令。job...

    5.抽取任务定时执行.docx

    接下来,我们需要在Kettle中创建一个新的Job,并对其进行配置以便能够定时执行数据抽取任务。 1. **创建Job**: - 打开Kettle,新建一个Job。 2. **添加Start和转换步骤**: - 在Job中添加一个“Start”步骤。 ...

    job《定时任务》需要得jar包

    1. **创建Job类**:定义一个实现了`org.quartz.Job`接口的类,这个类包含了你要定时执行的业务逻辑。 2. **定义Trigger**:创建一个`org.quartz.Trigger`实例,设置触发任务执行的时间规则,如cron表达式。 3. **...

    Oracle JOB,procedure,cursor 的使用

    1. 使用JOB定时执行存储过程:你可以创建一个存储过程,例如更新表中的数据,然后设定一个JOB在每天凌晨执行这个过程,确保数据保持最新。 2. 游标的使用:如果你需要遍历一个大表,获取满足特定条件的行进行处理,...

    furion内置的定时任务使用学习,动态添加定时任务代码

    在这个例子中,项目可能包含了一些学习示例,如`Job`目录下的类,这些类可能代表了具体的定时任务实现,每个类通常会继承自`IFurionJob`接口,这个接口定义了任务的执行逻辑。 `appsettings.json` 和 `appsettings....

    spring+quary定时存储jar包

    3. **定义 Job**:创建一个实现了 `org.quartz.Job` 接口的类,该类将包含定时任务的具体逻辑,如存储数据到数据库或文件系统。 4. **创建 Trigger**:定义一个或多个 `Trigger` 来决定何时触发 Job。可以使用 ...

    Oracle中job的使用详解.docx

    在 Oracle 中,job 是一种计划任务,可以根据需要执行存储过程、函数或其他操作。job 的执行可以根据需要设置,例如每天午夜 12 点、每周二中午 12 点、每月第一天的午夜 12 点等等。 2. job 的参数说明 Oracle ...

    dataX+xxl-job+openjdk11+默认执行器+python

    通过将dataX作为任务执行器,可以在XXL-JOB中定义任务,利用dataX实现跨数据库的数据同步。 **OpenJDK 11**: OpenJDK是Java Development Kit的开源实现,版本11属于长期支持(LTS)版本。选择OpenJDK 11意味着该解决...

    C#实现的自定义定时任务 可定时运行 多任务运行

    总的来说,利用C#实现的自定义定时任务系统,结合多任务管理,可以灵活地处理各种定时任务需求,无论是简单的单次执行还是复杂的周期性操作,都可以轻松应对。通过这样的设计,开发者可以根据自己的业务场景,创建出...

    oracle Job

    在给定的示例中,展示了如何创建一个Oracle Job来定期执行存储过程`P_DelCom`。下面将详细介绍其创建过程: ##### 1. 创建存储过程 首先,需要创建一个存储过程`P_DelCom`,该过程用于执行具体的数据库操作。在本例...

    Spring+Quartz 从数据库中获取定时任务和定时时间,动态实现对定时任务的增删改查

    本项目旨在演示如何利用Spring和Quartz从数据库中动态加载定时任务,并实现对它们的增删改查功能。以下是关于这个主题的详细知识讲解。 首先,Quartz是一个开源的作业调度框架,它允许开发者创建、安排和执行定时...

Global site tag (gtag.js) - Google Analytics