数据库:oracle 11g,操作都在pl/sql客户端完成

第一步、创建一个”E_P_FFM_STATE(fltdt in varchar2)“存储过程

第二步、打开Command Window,创建job,

 var job_num number;
begin
dbms_job.submit(:job_num,'E_P_FFM_STATE(null);',SYSDATE,'sysdate+5/24/60'); --5分钟执行一次
end;

执行成功,job id是25

第三步、运行job

 begin
dbms_job.run(:job_num);
end;

在pl/sql左边,打开DBMS_Jobs,看到”25“的job

本来就这几步,简单得很,但我也查了许久,中间总有东西不对,按照上述步骤应该会成功

后记:

1. 网上说要设置job_queue_processes,决定能运行的job数目,但我运行

后来查到说是要用 SYSDBA 管理员账号登录。如果可以使用dba登录,使用

alter system set job_queue_processes=10 scope=both;

可以修改这个参数

2.dbms_job使用参数说明

  • submit,创建
dbms_job.submit(:jobno,--job号
'your_procedure;',--要执行的过程/sql
trunc(sysdate)+1/24,--下次执行时间
'trunc(sysdate)+1/24+1'--每次间隔时间
);
  • 修改

dbms_job.what(jobno,what); --修改要执行的过程/sql语句
dbms_job.next_date(job,next_date);--修改下次执行时间
dbms_job.interval(job,interval);--修改间隔时间
  • 启动
dbms_job.run(jobno);--启动job
  • 停止
dbms.broken(jobno,--job号
broken,--true/false
nextdate --执行时刻
);--停止job

执行完以后记得commit事务

  • 删除
dbms_job.remove(jobno);--删除job

也要commit事务,成功后pl/sql左边DBMS_Jobs就看不到”25“的job

3. 常用执行示例

INTERVAL参数值 描述
TRUNC(SYSDATE+1) 每天午夜12点
TRUNC(SYSDATE+1)+(8*60+30)/(24*60) 每天早上8点30分
TRUNC(next_day(sysdate,1))+2/24  每周一凌晨2点执行
TRUNC(LAST_DAY(SYSDATE))+1+1/24  每月1日凌晨1点执行
TRUNC(LAST_DAY(SYSDATE)+1) 每个月第一天的午夜12点
TRUNC(ADD_MONTHS(SYSDATE,3),'q')+1/24 每季度的第一天凌晨1点执行
TRUNC(ADD_MONTHS(SYSDATE+2/24,3),'q')-1/24 每季度的最后一天的晚上11点执行
ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24 每年7月1日和1月1日凌晨1点 
ADD_MONTHS(trunc(sysdate,'yyyy'),12)+1/24 每年1月1日凌晨1点执行
   

4. 相关数据表

select * from user_jobs
select * from all_jobs
select * from dba_jobs

oracle定期运行job的更多相关文章

  1. 为 WSUS 服务器定期运行清理向导

    在 WSUS 的管理界面的 Options 里面,可以找到 Server Cleanup Wizard 然后运行.后来想了一下,为什么不把它弄成定期运行呢! 找了一下,从 Windows Server ...

  2. Oracle DBA的神器: PRM恢复工具,可脱离Oracle软件运行,直接读取Oracle数据文件中的数据

    Oracle DBA的神器: PRM恢复工具,可脱离Oracle软件运行,直接读取Oracle数据文件中的数据 PRM 全称为ParnassusData Recovery Manager ,由 诗檀软 ...

  3. oracle Plsql 运行update或者delete时卡死问题解决的方法

    oracle Plsql 运行update或者delete时 遇到过Plsql卡死问题或者导致代码运行sql的时候就卡死. 在开发中遇到此问题的时候,本来把sql复制出来,在plsql中运行,Sql本 ...

  4. oracle建立job定期运行存储过程

    1 首先查看 SQL> show parameter job NAME TYPE VALUE------------------------------------ ----------- -- ...

  5. 如何诊断oracle数据库运行缓慢或hang住的问题

    为了诊断oracle运行缓慢的问题首先要决定收集哪些论断信息,可以采取下面的诊断方法:1.数据库运行缓慢这个问题是常见还是在特定时间出现如果数据库运行缓慢是一个常见的问题那么可以在问题出现的时候收集这 ...

  6. 查询oracle sql运行计划,一个非常重要的观点--dba_hist_sql_plan

    该文章的作者给予了极大的帮助长老枯荣,为了表达我的谢意. 这适用于oracle db版本号oracle 10g或者更高的版本号. 之所以说这种看法是非常重要的,因为观点是有之一awrsqrpt报告没有 ...

  7. centos6安装oracle时运行./runInstaller无法弹出图形界面

    首先确保安装oracle的机器上安装了图形化界面. 1.利用xmanager登录到安装oracle的服务器上(直接用root用户登录) 2.运行 export DISPLAY=你的本机地址:0.0 3 ...

  8. 使用hint优化Oracle的运行计划 以及 SQL Tune Advisor的使用

    背景: 某表忽然出现查询很缓慢的情况.cost 100+ 秒以上:严重影响生产. 原SQL: explain plan for select * from ( select ID id,RET_NO ...

  9. MVC项目使用Oracle数据库运行提示:找不到请求的 .Net Framework Data Provider。可能没有安装

    MVC项目使用Entity Framework针对Oracle数据库进行开发时,由于Oracle官方网站一般建议开发者在64位操作系统中使用32位ODP.Net进行开发.在进行程序编码的时候不会有问题 ...

随机推荐

  1. public, protected, private, internal, protected internal简析

    public是可访问权限最高的,比如姓名,每个人都可以知道别人的姓名,这个不是什么秘密 protected的访问权限要低些,只有子类才可以访问得到父类的protected属性.就好像老子的财产只有儿子 ...

  2. Base64编解码(C++版)

    #include <string> using namespace std; class ZBase64 { public:     /*编码     DataByte         [ ...

  3. ocp 1Z0-047 61-130题解析

    61. Evaluate the following SQL statements that are issued in the given order:CREATE TABLE emp(emp_no ...

  4. 条件编译#ifdef的妙用详解_透彻

    这几个宏是为了进行条件编译.一般情况下,源程序中所有的行都参加编译.但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部 分内容指定编译的条件,这就是“条件编译”.有时,希望当满足某条 ...

  5. CentOS查看系统信息-CentOS查看命令

    一:查看cpu more /proc/cpuinfo | grep "model name" grep "model name" /proc/cpuinfo 如 ...

  6. delphi读取excel

    简单的例子 procedure TForm1.Button1Click(Sender: TObject); var ExcelApp,MyWorkBook: OLEVariant; begin ope ...

  7. 关于block以及__bridge的一些笔记

    问题概要 _block是否是一个OC对象? __bridge相关. _block是否是一个OC对象? 结论 一般来说,block可以看做一个OC对象,但是在编译器底层,block又可以被细分为bloc ...

  8. Windows安全模式的妙用

    使用计算机的老手一定对windows安全模式不陌生,在删除病毒,卸载顽固软件,或者系统维护时,Windows的安全模式肯定会帮助很大,下面电脑技术就说说Windows安全模式的作用以及用处. wind ...

  9. C++常用容器

    vector 顺序容器,和数组类似,可从尾部快速的插入和删除,可随机访问. vector的常用成员函数: #include<vector> std::vector<type> ...

  10. 更改Android AVD路径

    添加环境变量 变量名:ANDROID_SDK_HOME 变量值:D:\Program Files\Java //SDK路径