`

Oracle中使用语句创建Jobs

阅读更多

今天修改业务时,需要用到Oracle数据库中的工作任务,对创建Job语句进行一下整理,以备参考:

 

declare
    job binary_integer;
    d_begindate date;
    s_interval varchar2(50);
begin
    d_begindate := to_date('2009-08-14 23:50:00', 'yyyy-mm-dd hh24:mi:ss');
    s_interval := 'trunc(sysdate + 1) + 23 / 24';
    sys.dbms_job.submit(job, 'prc_test;', d_begindate, s_interval, false, 0, false);
    commit;
end;
/
 

使用代码时,只需对几个变量进行相应修改,并写上需要调用的程序块即可。

 

 

在PL/SQL Developer 8中,创建JOB与原来区别很大。

 

1.查询JOB信息

select t.job_name,
       t.job_type,
       t.job_action,
       to_char(t.start_date, 'yyyy-mm-dd hh24:mi:ss'),
       t.repeat_interval,
       t.enabled,
       t.state,
       to_char(t.last_start_date, 'yyyy-mm-dd hh24:mi:ss')
  from user_scheduler_jobs t;

 

2.删除JOB信息

BEGIN
  SYS.DBMS_SCHEDULER.DROP_JOB
    (job_name  => 'APPS.JOB_MOSS_DELETE_TEMP_TABLE');
END;
 

3.创建JOB信息

begin
sys.dbms_scheduler.create_job(job_name            => 'APPS.JOB_MOSS_DELETE_TEMP_TABLE',
                                job_type            => 'STORED_PROCEDURE',
                                job_action          => 'pkg_bosun_moss_erp.prc_clear_temp_table',
                                number_of_arguments => 3,
                                start_date          => to_date('2011-07-18 04:00:00', 'yyyy-mm-dd hh24:mi:ss'),
                                repeat_interval     => 'TRUNC(sysdate + 1) + 4 / 24',
                                end_date            => null,
                                job_class           => 'DEFAULT_JOB_CLASS',
                                enabled             => false,
                                auto_drop           => false,
                                comments            => '每天凌晨4点执行清空销售平台临时表数据');
  sys.dbms_scheduler.set_job_argument_value(job_name          => 'APPS.JOB_MOSS_DELETE_TEMP_TABLE',
                                            argument_position => 1,
                                            argument_value    => '0');
  sys.dbms_scheduler.set_job_argument_value(job_name          => 'APPS.JOB_MOSS_DELETE_TEMP_TABLE',
                                            argument_position => 2,
                                            argument_value    => '');
  sys.dbms_scheduler.set_job_argument_value(job_name          => 'APPS.JOB_MOSS_DELETE_TEMP_TABLE',
                                            argument_position => 3,
                                            argument_value    => '');
  sys.dbms_scheduler.enable(name => 'APPS.JOB_MOSS_DELETE_TEMP_TABLE');
end;
 

 

 

 

分享到:
评论

相关推荐

    Oracle创建job

    oracle Job创建、管理、监控,Job运行情况分析,如果创建、删除、停止、修改Job.

    oracle job创建脚本

    使用`commit`语句确保Job的创建操作被持久化到数据库中。如果未提交,当数据库会话结束时,Job可能不会被真正创建。 5. **间隔设置**: Job的间隔可以根据实际需求进行调整。例如,如果你想让Job每小时执行一次,...

    plsql创建存储过程并创建job定时任务执行-详细笔记文档总结

    在本文中,我们将详细介绍如何使用 plsql 创建存储过程并创建 job 定时任务执行。 一、创建存储过程 在 Oracle 中,存储过程是指一组 SQL 语句的集合,用于执行特定的操作。创建存储过程需要使用 create procedure...

    oracle创建job

    Oracle 中创建 Job 是实现数据库定期任务的重要步骤,可以是定期执行存储过程或者简单的 SQL 语句。在 Oracle 中,Job 是一个异步执行的任务,可以根据需要设置执行频率和执行时间。本文将详细介绍 Oracle 中创建 ...

    oracle 创建job实例

    Oracle 创建 Job 实例是指在 Oracle 数据库中创建一个计划任务,用于在特定的时间点执行特定的操作。以下是创建 Job 实例的详细过程和相关知识点: 一、创建 Job 实例 要创建一个 Job 实例,需要使用 dbms_job....

    Oracle JOB 用法小结

    要查看相关作业信息,可以查询视图`dba_jobs`、`all_jobs`和`user_jobs`,以及`dba_jobs_running`以获取正在运行的作业信息。此外,`V$LOCK`视图可用于查看JOB队列锁的相关信息。 在实际操作中,可以通过创建表、...

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

    1. **创建存储过程**:在Oracle中,存储过程是一组预先编译好的SQL和PL/SQL语句,可以接受参数并返回结果。为了实现定时更新数据,我们需要编写一个存储过程,该过程包含必要的SQL更新语句。例如,以下是一个简单的...

    oracle实验二视图

    本实验涵盖了 Oracle 中的视图概念、创建视图、显示视图的内容、从数据字典视图中选择视图的名字和文本、使用视图查询数据、创建带有条件的视图、显示视图的结构和内容、更新视图、创建复杂视图等内容,为读者提供了...

    quartz-2.2.3版本的quartz初始化sql语句

    Quartz的初始化SQL语句主要用于创建存储作业(Jobs)、触发器(Triggers)、日历(Calendars)等信息的数据库表。这些表是Quartz与数据库交互的基础,确保任务调度的正常运行。在Quartz 2.2.3版本中,提供的SQL脚本...

    Oracle可执行文件,包含导入导出可执行文件

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,其在数据管理、事务处理和企业级应用中扮演着核心角色。在Oracle数据库中,导入(import)和导出(export)是两个重要的工具,用于数据迁移、备份和恢复。本...

    oracle job 创建

    创建一个 Oracle Job 需要使用 `DBMS_JOB` 包中的 `SUBMIT` 子程序。在提供的示例中,我们看到以下步骤: - 首先,声明变量 `job_month` 来存储新创建的 Job ID。 - 使用 `BEGIN...END` 语句启动 PL/SQL 块,并...

    Oracle培训教材.doc

    Oracle数据库是全球广泛使用的大型关系型数据库管理系统,尤其在企业级应用中占据重要地位。本文主要探讨Oracle SQL的基础知识,包括SQL语句分类、Oracle数据类型、运算符以及简单的SELECT语句。 首先,SQL语句主要...

    最完整的Toad For Oracle使用手册

    ### Toad for Oracle 使用手册关键知识点总结 #### 一、简介与新特性 - **Toad for Oracle**:是一款强大的数据库开发与管理工具,适用于Oracle数据库环境。 - **新版本特性**:概述了Toad for Oracle最新版本的...

    DBMS_JOB包创建ORACLE定时任务

    在Oracle数据库中,`DBMS_JOB`包提供了一种机制,用于创建和管理后台作业(Job),这些作业可以在特定的时间或按一定的时间间隔执行。这对于需要定期执行的任务非常有用,比如数据清理、统计报告生成、备份等。 ###...

    oracle定时任务

    首先,Oracle数据库使用DBMS_SCHEDULER包来创建和管理这些定时任务。DBMS_SCHEDULER是一组存储过程和函数,用于创建、修改和控制数据库作业的执行。它取代了早期版本的DBMS_JOB,提供了更强大的功能和灵活性。 1. *...

    创建oracle job

    在Oracle数据库管理中,创建Job是一项重要的功能,可以帮助用户自动化执行一些周期性的任务,比如定期备份数据、更新统计信息等。本文将详细介绍如何在Oracle环境中创建Job,并通过具体的示例来解释各个步骤。 ####...

    详解oracle9i Statspack安装&使用

    如果安装过程中出现问题,可以使用`spdrop.sql`来删除已创建的信息: ``` SQL> conn / as sysdba SQL> @$ORACLE_HOME/rdbms/admin/spdrop.sql ``` 4. **设置自动快照** 为了定期收集性能数据,你可以通过`...

    oracle定时删除表空间的数据并释放表空间

    "Oracle定时删除表空间的数据并释放表空间" Oracle数据库定时删除表空间的数据...使用Oracle数据库可以通过创建存储过程和定时任务来实现定时删除表空间的数据并释放表空间。这将有助于释放磁盘空间和提高数据库性能。

    透过SQL Server 2008访问Oracle 10g的配置方法

    3. 配置 Oracle 客户端 tnsnames.ora 文件,其中需要注意文件中的数据库别名“ORADB”,该名称在下文创建 Linked Server 时将会使用到。 在 tnsnames.ora 文件中,需要添加以下内容: ORADB = (DESCRIPTION = ...

    Oracle Job的用法

    Oracle Job是Oracle数据库中的一个强大特性,主要用于在特定时间或间隔执行数据库操作,例如数据备份、维护任务或者定期的数据处理。以下是对Oracle Job使用方法和技巧的详细说明: 一、创建Oracle Job Oracle Job...

Global site tag (gtag.js) - Google Analytics