oracle job定时报错,Oracle Job定时任务的使用详解

Oracle中的job能为你做的就是在你规定的时间格式里执行存储过程,定时执行一个任务 。

下面是一个小案例,定时每15分钟向一张表插入一条数据

一、步骤1

1.

创建一张测试表

-- Create table

create table A8

(

a1 VARCHAR2(500)

)

tablespace DSP_DATA

pctfree 10

initrans 1

maxtrans 255

storage

(

initial 64K

next 1M

minextents 1

maxextents unlimited

);

2.创建存储过程 实现向测试表插入数据

create or replace procedure proc_add_test as

begin

insert into a8 values (to_char(sysdate,'yyyy-mm-dd hh:mi'));/*向测试表插入数据*/

commit;

end;

3.创建job定时任务 实现自动调用存储过程(当前时间 17:03)

declare

job number;

BEGIN

DBMS_JOB.SUBMIT(

JOB => job,/*自动生成JOB_ID*/

WHAT => 'proc_add_test;',/*需要执行的存储过程名称或sql语句*/

NEXT_DATE => sysdate+3/(24*60),/*初次执行时间-下一个3分钟*/

INTERVAL => 'trunc(sysdate,''mi'')+1/(24*60)' /*每隔1分钟执行一次*/

);

commit;

end;

4.也就是应该从17:06开始 每隔1分钟执行一次存储过程 下面是截止17:12分的测试表的数据

二、步骤2

1.可以通过查询系统表查看该job信息

select * from user_jobs;

2.手动sql调用job (直接调用job可以忽略开始时间)

begin

DBMS_JOB.RUN(40); /*40 job的id*/

end;

3.删除任务

begin

/*删除自动执行的job*/

dbms_job.remove(40);

end;

4.停止job

begin

dbms_job.broken(v_job,true,next_date); /*停止一个job,里面参数true也可是false,next_date(某一时刻停止)也可是sysdate(立刻停止)。 */

commit;

end;

5.修改间隔时间

begin

dbms_job.interval(job,interval);

commit;

end;

6.修改下次执行时间

begin

dbms_job.next_date(job,next_date);

commit;

end;

7.修改要执行的操作

begin

dbms_job.what(jobno,'sp_fact_charge_code;'); --修改某个job名

commit;

end;

三 其他知识

1.存job信息的表user_jobs主要字段说明

列名

数据类型

解释

JOB

NUMBER

任务的唯一标示号

LOG_USER

VARCHAR2(30)

提交任务的用户

PRIV_USER

VARCHAR2(30)

赋予任务权限的用户

SCHEMA_USER

VARCHAR2(30)

对任务作语法分析的用户模式

LAST_DATE

DATE

最后一次成功运行任务的时间

LAST_SEC

VARCHAR2(8)

如HH24:MM:SS格式的last_date日期的小时,分钟和秒

THIS_DATE

DATE

正在运行任务的开始时间,如果没有运行任务则为null

THIS_SEC

VARCHAR2(8)

如HH24:MM:SS格式的this_date日期的小时,分钟和秒

NEXT_DATE

DATE

下一次定时运行任务的时间

NEXT_SEC

VARCHAR2(8)

如HH24:MM:SS格式的next_date日期的小时,分钟和秒

TOTAL_TIME

NUMBER

该任务运行所需要的总时间,单位为秒

BROKEN

VARCHAR2(1)

标志参数,Y标示任务中断,以后不会运行

INTERVAL

VARCHAR2(200)

用于计算下一运行时间的表达式

FAILURES

NUMBER

任务运行连续没有成功的次数

WHAT

VARCHAR2(2000)

执行任务的PL/sql块

@H_620_301@

2.INTERVAL参数常用值示例

每天午夜12点''TRUNC(SYSDATE+1)''

每天早上8点30分''TRUNC(SYSDATE+1)+(8*60+30)/(24*60)''

每星期二中午12点''NEXT_DAY(TRUNC(SYSDATE),''''TUESDAY'''')+12/24''

每个月第一天的午夜12点''TRUNC(LAST_DAY(SYSDATE)+1)''

每个季度最后一天的晚上11点''TRUNC(ADD_MONTHS(SYSDATE+2/24,3),''Q'')-1/24''

每星期六和日早上6点10分''TRUNC(LEAST(NEXT_DAY(SYSDATE,''''SATURDAY"),NEXT_DAY(SYSDATE,"SUNDAY")))+(6×60+10)/(24×60)''

每3秒钟执行一次'sysdate+3/(24*60*60)'

每2分钟执行一次'sysdate+2/(24*60)'

1:每分钟执行

Interval=>TRUNC(sysdate,'mi')+1/(24*60)--每分钟执行

interval=>'sysdate+1/(24*60)'--每分钟执行

interval=>'sysdate+1'--每天

interval=>'sysdate+1/24'--每小时

interval=>'sysdate+2/24*60'--每2分钟

interval=>'sysdate+30/24*60*60'--每30秒

2:每天定时执行

Interval=>TRUNC(sysdate+1)--每天凌晨0点执行

Interval=>TRUNC(sysdate+1)+1/24--每天凌晨1点执行

Interval=>TRUNC(SYSDATE+1)+(8*60+30)/(24*60)--每天早上8点30分执行

3:每周定时执行

Interval=>TRUNC(next_day(sysdate,'星期一'))+1/24--每周一凌晨1点执行

Interval=>TRUNC(next_day(sysdate,1))+2/24--每周一凌晨2点执行

4:每月定时执行

Interval=>TTRUNC(LAST_DAY(SYSDATE)+1)--每月1日凌晨0点执行

Interval=>TRUNC(LAST_DAY(SYSDATE))+1+1/24--每月1日凌晨1点执行

5:每季度定时执行

Interval=>TRUNC(ADD_MONTHS(SYSDATE,'q')--每季度的第一天凌晨0点执行

Interval=>TRUNC(ADD_MONTHS(SYSDATE,'q')+1/24--每季度的第一天凌晨1点执行

Interval=>TRUNC(ADD_MONTHS(SYSDATE+2/24,'q')-1/24--每季度的最后一天的晚上11点执行

6:每半年定时执行

Interval=>ADD_MONTHS(trunc(sysdate,'yyyy'),6)+1/24--每年7月1日和1月1日凌晨1点

7:每年定时执行

Interval=>ADD_MONTHS(trunc(sysdate,12)+1/24--每年1月1日凌晨1点执行

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

相关文章

猜你在找的Oracle相关文章

数据库版本:11.2.0.4 RAC(1)问题现象从EM里面可以看到,在23号早上8:45~8:55时,数据库等待会话暴增,大约到了80个会话。通过查看EM的SQL信息,发现等待产生于SQL语句 (二

(一)问题背景最近在对一个大约200万行数据的表查看执行计划时,发现存在异常,理论上应该返回100多万笔数据的,但是执行计划只返回了2条数据,比较奇怪,稍微思考,肯定是统计信息出问题了。explain

(1)DRA介绍 数据恢复顾问(Data Recovery Advise)是一个诊断和修复数据库的工具,DRA能够修复数据文件和(某些环境下)控制文件的损坏,它不提供spfile和logfile的修复

RMAN(Recovery Manager)是Oracle恢复管理器的简称,是集数据库备份(backup)、修复(restore)和恢复(recover)于一体的工具。接下来了解一下RMAN中的几个重

(1)连接目标数据库 在RMAN中可以建立与目标数据库或恢复目录数据库的连接。与目标数据库连接时,用户须具有sysdba系统权限,以保证可以进行数据库的备份、修复与恢复工作。 可以在操作系统命令提示符

(1)问题描述 在进行数据库归档备份时(备份归档日志文件和控制文件),有时成功,有时失败,失败报错如下: RMAN-00571: ===================================

(一)truncate操作概述在生产中,truncate是使用较多的命令,在使用不当的情况下,往往会造成表的数据全部丢失,恢复较为困难。对于truncate恢复,常见的有以下几种方法可以进行恢复:使用

(一)恢复目录概述RMAN档案资料库用于存储数据库备份、修复以及恢复所需的信息。这些信息可以保存在备份数据库的控制文件中,也可以单独保存在一个独立的恢复目录数据库的恢复目录中。两种方式差别如下:(1)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/571817.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python调用ping命令_在Python中调用Ping命令,批量IP的方法

#!/usr/bin/env python #coding:UTF-8Author: jefferchen163.com 可在命令行直接带目的IP,也可将IP列表在文本文件中。 pingip.py -d DestIP DestIP示例: a)单个: 192.168.11.1 b)多个: 192.168.11.1;172.16.8.1;176.13.18.2 c)网段: 192.168…

thinkPHP伪静态,如何去掉index.php呢?

如何去掉index.php呢?1.httpd.conf配置文件中加载了mod_rewrite.so模块 //在APACHE里面去配置#LoadModule rewrite_module modules/mod_rewrite.so把前面的警号去掉2.AllowOverride None 讲None改为 All //在APACHE里面去配置 (注意其他地方的AllowOverride也统统设置为…

chown -r oracle:oinstall /oracle,CentOS7安装Oracle12c图文详解

root身份安装依赖包: yum -y install binutils compat-libcap1 compat-libstdc-33 compat-libstdc-33*.i686 elfutils-libelf-devel gcc gcc-c glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc libstdc*.i686 libstdc-devel li…

在苹果笔记本如何使用python_mac下如何将python2.7改为python3

1.查看当前电脑python版本 python -V // 显示2.7.x 2.用brew升级python brew update python 3.如果安装成功,去系统目录下回看到两个版本的python cd usr/local/Cellar/ //到此目录下 cd python/ //进入python目录下 查看已安装的python版本,如果有2.x 和…

[BZOJ1834][ZJOI2010]network 网络扩容 最大流+费用流

1834: [ZJOI2010]network 网络扩容 Time Limit: 3 Sec Memory Limit: 64 MB Submit: 3330 Solved: 1739 [Submit][Status][Discuss]Description 给定一张有向图,每条边都有一个容量C和一个扩容费用W。这里扩容费用是指将容量扩大1所需的费用。求: 1、 …

oracle备份密码文件,[数据库]Oracle数据库备份dmp文件,使用cmd命令导入导出步骤,以及忘记Oracle密码_星空网...

Oracle数据库备份dmp文件,使用cmd命令导入导出步骤,以及忘记Oracle密码2013-07-300dmp文件导入导出步骤1.创建表空间--datafile 的路径随便给,但是后面的文件命名用dbfCREATE TABLESPACE DTBSLOGGINGDATAFILE D:\OracleDateFile\DTBS.DBF SIZE 32MAUTOEX…

python需要花钱下载吗_用Python下载知乎视频,非常实用

原标题:用Python下载知乎视频,非常实用Python下载知乎视频。 # -*- coding: utf-8 -*- """ 下载知乎视频: 依赖: pip install requests mac 安装 ffmpeg: brew install ffmpeg """ import re impor…

php instanceof 基类,PHP强制对象类型之instanceof操作符

一、简介在php(做为现在的主流开发语言)中实现强制对象类型有时可能非常重要。如果缺少了它,或是因为缺乏这方面的知识——基于不正确的编程假设,或者仅仅是由于懒惰,那么你会在特定的Web应用程序中看到你所不希望的结果。特别是当用php(做为…

msyql备份还原

MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。 1.Win32下MySQL的备份与还原 1.1 备份 开始菜单 | 运行 | cmd |利用“cd \Program Files\MySQL\MySQL Server 5.0\bin”命令进入bin文件夹 | 利用“mysqldump -u 用户名 -p databasename >exportfilename”…

python相比于excel的优势_对照Excel使用Python进行数据分析,更快掌握

Excel和Python,作为数据分析的主流工具,在从效率提升到数据商业化的整个过程中,都起到了重要作用。不管是在Excel中通过鼠标点选实现,亦或是利用Python通过代码实现,数据分析中的很多基础功能都是相通的。 在数据量级大…

oraoledb.oracle 12c,关于OraOLEDB.Oracle找不到驱动问题的一种可能解决方案

如果安装Oracle的时候没有把Oracle Provider for OLE DB,这个组件安装上,那么就会导致在使用程序的时候无法使用Oracle客户端驱动问题,弥补的办法就是重新下载客户端程序。以下介绍win 2008 x64 Oracle 11g x64情况搭建安装驱动程序首先得下…

python二维图颜色函数_Python scipy的二维图像卷积运算与图像模糊处理操作示例

本文实例讲述了Python scipy的二维图像卷积运算与图像模糊处理操作。分享给大家供大家参考,具体如下: 二维图像卷积运算 一 代码 import numpy as np from scipy import signal, misc import matplotlib.pyplot as plt image misc.ascent()#二维图像数组…

linux命令行大全 笔记,《Linux命令行大全》读书笔记

8种机械键盘轴体对比本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?shell就是一个程序,它接受从键盘输入的命令,然后把命令传递给操作系统执行。当使用图像用户界面时,我们需要一个叫做终端仿真器…

dedecms 添加,编辑文章时 文章标题有字数限制的解决办法。

百度上说 解决方法有两步: 一、先要在系统参数下的其他选项中修改文档标题最大长度(如修改为150), 后台系统 - 其它选项 - 文档标题最大长度 默认的是60改为150, 二、修改默认参数后,需要手工修改数据表。 …

python绘制散点图、如何选两列作为横坐标_在matplotlib散点图(水平杆图)中从x=0到数据点绘制水平线...

考虑以下情节:由此函数生成:def timeDiffPlot(dataA, dataB, savetoNone, legNone): labels list(dataA["graph"]) figure(figsizescreenMedium) ax gca() ax.grid(True) xi range(len(labels)) rtsA dataA["running"] / 1000.0…

linux命令基础知识 管道流,linux基础知识-I/O重定向,管道(示例代码)

系统设定默认输出设备:标准输出,STDOUT, 1默认输入设备:标准输入, STDIN, 0标准错误输出:STDERR, 2标准输入:键盘标准输出和错误输出:显示器I/O重定向:Linux:>: 覆盖输出[[email protected] …

自动轮播与按钮的联动

将自动轮播与按钮结合起来,就是多写了好几行,挺好看的不过,留下 z1; l.eq(0).css("background-color","orange"); function move(){ if(z!3){ bo.stop(); bo.animate({marginLeft:z*(-680)"px"}, 500, functio…

python运行命令_Python中执行外部命令

有很多需求需要在Python中执行shell命令、启动子进程,并捕获命令的输出和退出状态码,类似于Java中的Runtime类库。 subprocess模块的使用: Python使用最广泛的是标准库的subprocess模块,用来替换os.system(),os.spawn*(),os.popen…

linux多选项菜单脚本,linux shell 编写菜单脚本事例

menu2文件代码:---#!/bin/sh#menu2#Main menu script#ignore ctrl-c and QUIT interruptstrap "" 2 3 15MYDATEdate %d/%m/%YTHIS_HOSThostname -sUSERwhoami#user level fileUSER_LEVELSpriv.user#hold fileHOLD1hold1.$$#colour functionfunction colou…

python简单爬虫入门一_Python爬虫快速入门:基本结构简单实例

本爬虫系列入门教程假设读者仅有一点点Python基础或者近乎为零的基础。如果是有Python基础的可以跳过一些对于Python基本知识的补充。 爬虫能干什么呢?一句话概括,正常通过浏览器可以获取的数据,爬虫都可以获取。这句话可以说是包罗万象。一是…