`
JYLike97
  • 浏览: 22074 次
  • 性别: Icon_minigender_1
  • 来自: 四川
文章分类
社区版块
存档分类
最新评论

关于oracle计划任务设置的实例

阅读更多
承接上文,本片具体讨论一下plan_jobs,在数据库中常常需要用到很多的计划任务,
主要是实现数据的定时处理。比如在本次开发中,我们有一个酒店取消预订的计划任务需要实施,存储过程如下
                     ----取消房间预订
PROCEDURE CANCELPREBOOK
AS
cursor cur_prebook is
  select t.prebookid,t.roomid
  from prebook t
  where t.valid=0
  and  t.roomid =-1
  and  t.scheduledate<sysdate;
CURSOR CUR_HASPREBOOK IS
  select t.prebookid,t.roomid
  from prebook t
  where t.valid=0
  AND T.ROOMID<>-1
  and  t.scheduledate<sysdate;
v_id number;
v_roomid number;
V_STATUS NUMBER;
BEGIN
  open cur_prebook;
  loop
  fetch cur_prebook into v_id,v_roomid;
    exit when cur_prebook%notfound;
                      ----取消预订表
  update prebook t
  set t.valid=1
  where t.valid=0
  and t.prebookid=v_id;
                      ----取消预订房间
  update rooms rm
  set rm.status=1
  where rm.roomid=v_roomid;
 end loop;
 close cur_prebook;
                      ----CANCEL HASN'T IN
  OPEN CUR_HASPREBOOK;
  loop
  fetch CUR_HASPREBOOK into v_id,v_roomid;
    exit when CUR_HASPREBOOK%notfound;
    SELECT T.STATUS INTO V_STATUS
    FROM ROOMS T WHERE T.ROOMID=V_ROOMID;
    IF V_STATUS=2 THEN
                     ----CANCEL ROOM
      UPDATE ROOMS RS SET RS.STATUS=1
      WHERE RS.ROOMID=v_roomid;
                     ---CANCEL PREBOOK RECORD
      UPDATE PREBOOK BK SET BK.VALID=1
      WHERE BK.PREBOOKID= v_id;
    END IF;
  END LOOP;
  CLOSE CUR_HASPREBOOK;
END CANCELPREBOOK;

具体的方法是:
1,打开pl/sql的command window。
2,定义一个number变量叫jobno。
sql>variable jobno number;
3,提交任务。

SQL> begin
  2  dbms_job.submit(--pro C的语法
          :jobno,----任务计划系统编号
          'ems_planjob_pkg.CANCELPREBOOK;',----调用计划包中的目标过程
           sysdate+(45/1440),----首次执行时间
          'sysdate+1'-----间隔执行时间
           );
  3  end;
  4  /-----激活
成功后提示如下
PL/SQL procedure successfully completed
用户可以查询出当前的任务计划,确认是否正确,语句如下
select * from user_jobs;
分享到:
评论

相关推荐

    关于oracle计划任务设置的实例.rar

    通过Oracle实例来讲述如何设计Oracle数据库,大家可以下载作为学习Oracle的一个参考吧

    通过JDBC连接Oracle数据库的十大技巧

    如果编程人员要在一个表中查找许多行,结果中的每个行都会查找其他表中的数据,最后,编程人员创建了独立的UPDATE命令来成批地更新第一个表中的数 据。...本文将为大家介绍通过JDBC连接Oracle数据库的十大技巧。

    Oracle 创建 job 实例

    主要讲解怎样给Oracle创建定时任务,例如每一分钟把一张表的数据更新到另一表中。

    Oracle数据库应用与开发实例教程[吴海波主编][电子教案]

    按照如下顺序传授知识与训练技能:体验数据库的应用→认识Oracle的工作环境、体验Oracle 10g环境中常用工具操作→数据库的创建与管理→数据表的创建与管理→管理视图→SQL编程语言→PL/SQL编程语言→管理PLSQL存储...

    Oracle数据库应用与开发实例教程

    体验数据库的应用→认识 Oracle的工作环境、体验Oracle 10g环境中常用工具操作→数据库的创建与管理→数据表的创建与管理→管理视图→SQL编程语言→PL/SQL编程语言→管理PLSQL存储过程与触发器 →管理安全性→数据库...

    Oracle 教程 Oracle Server

    Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务,...

    Oracle大型数据库技术详解

    Oracle数据库对应唯一的一个实例名SID,Oracle数据库服务器启动后,一般至少有以下几个用户:Internal,它不是一个真实的用户名,而是具有SYSDBA优先级的Sys用户的别名,它由DBA用户使用来完成数据库的管理任务,...

    oracle10g课堂练习I(1)

    Oracle 数据库管理员的任务 2-3 用于管理 Oracle 数据库的工具 2-4 安装:系统要求 2-6 检查系统要求 2-7 灵活体系结构 (OFA) 2-8 使用灵活体系结构 2-9 设置环境变量 2-11 Oracle Universal Installer (OUI)...

    Oracle DBA workshop1 (中文版)

    Oracle 数据库管理员的任务2-3 用于管理Oracle 数据库的工具2-4 安装:系统要求2-6 检查系统要求2-7 灵活体系结构(OFA) 2-8 使用灵活体系结构2-9 设置环境变量2-11 Oracle Universal Installer (OUI) 2-13 安装...

    oracle10g创建、启用、执行、停用、删除、查询job实例

    oracle10g创建、启用、执行、停用、删除、查询job实例

    C# Oracle数据库操作类实例详解

    可执行超多常用的Oracle数据库操作,包含了基础数据库连接、关闭连接、输出记录集、执行Sql语句,返回带分页功能的dataset 、取表里字段的类型和长度等,同时还有哈稀表自动插入数据库等高级任务。需要特别指出的是...

    ORACLE定时任务

    学些ORACLE的时候老是创建定时任务失败,这里提供一个实例

    oracle 优化培训资料

    数据库实例就是一组oracle的后台进程/线程和共享内存区域的组合 Oracle 例程:Oracle 例程是后台进程和内存结构的组合。只有启动例程后,才能访问数据库中的数据。每次启动例程时,会分配系统全局区 (SGA) 并启动 ...

    LINUX环境下oracle11gr2 grid + asm下dbca创建数据库生产环境安装注意事项

    3) 配置节点互信(所有节点的基于用户oracle,grid的互信) 12 4) 创建组和用户,加权限 13 5) 用户环境变量配置 13 6) 创建目录,给予目录权限 14 7) 配置系统文件 14 a) 配置oracle、grid用户的shell限制 14 b) ...

    ORACLE9i_优化设计与系统调整

    §7.2 关于创建多个Oracle实例问题 93 §7.3 Oracle系统安装后的优化基础工作 94 §7.3.1 Oracle系统有关目录所有文件的保护 94 §7.3.2 避免新用户使用默认system系统表空间 94 §7.4 Oracle系统所在服务器的独立性...

    Visual C++程序开发范例宝典(光盘) 第八部分

    实例207 连接Oracle数据库 8.2 添加数据 实例208 利用INSERT语句批量插入数据 实例209 利用SELECT INTO生成临时表 8.3 更新数据 实例210 批量修改数据 实例211 将指定字段数据为空的记录添上数据 8.4 删除...

    Oracle Database 11g初学者指南--详细书签版

    8.5 设置ASM实例 222 8.6 创建ASM磁盘组 227 8.7 使用ASMCMD和ASMLIB 228 8.8 把已有数据库转换为ASM 229 8.9 Data Guard简介 231 8.10 Data Guard保护模式 232 8.11 创建物理备用服务器 234 8.12 综述 236 ...

    Oracle数据库管理员技术指南

    5.2.8 关于备用激活要记住的三个要点 5.2.9 备用激活后的四项工作 5.2.10 将归档重做日志自动传送到备用 数据库 5.2.11 启动管理恢复 5.2.12 只读打开备用数据库 5.2.13 热备用数据库的维护 5.3 回顾 第6章 ...

Global site tag (gtag.js) - Google Analytics