CREATE OR REPLACE PROCEDURE job_procedure AS
i_count INTEGER;
v_job VARCHAR2(128);
v_schedule VARCHAR2(128);
BEGIN
v_job := upper('job_name');
SELECT COUNT(*)
INTO i_count
FROM user_objects t
WHERE t.OBJECT_TYPE = 'JOB'
AND t.OBJECT_NAME = upper(v_job);
IF i_count > 0
THEN
DBMS_SCHEDULER.DROP_JOB(v_job);
END IF;
v_schedule := 'S_' || v_job;
SELECT COUNT(*)
INTO i_count
FROM user_objects t
WHERE t.OBJECT_TYPE = 'SCHEDULE'
AND t.OBJECT_NAME = upper(v_schedule);
IF i_count > 0
THEN
DBMS_SCHEDULER.DROP_SCHEDULE(v_schedule);
END IF;
DBMS_SCHEDULER.CREATE_SCHEDULE(schedule_name => v_schedule,
start_date => SYSTIMESTAMP,
repeat_interval => 'FREQ=DAILY; BYHOUR=2;',
comments => 'Run at 2 every 24 hours');
DBMS_SCHEDULER.CREATE_JOB(job_name => v_job,
job_type => 'STORED_PROCEDURE',
job_action => 'DELETEHISTORYDATA.P_DELETE_HISTROY_DATA',
schedule_name => v_schedule,
enabled => TRUE,
auto_drop => FALSE);
COMMIT;
EXCEPTION
WHEN OTHERS THEN
const.log_error_to_table(SQLCODE, SQLERRM, 'fail to create job ' || v_job);
END init_job_procedure;
/
call job_procedure();
drop procedure job_procedure;
i_count INTEGER;
v_job VARCHAR2(128);
v_schedule VARCHAR2(128);
BEGIN
v_job := upper('job_name');
SELECT COUNT(*)
INTO i_count
FROM user_objects t
WHERE t.OBJECT_TYPE = 'JOB'
AND t.OBJECT_NAME = upper(v_job);
IF i_count > 0
THEN
DBMS_SCHEDULER.DROP_JOB(v_job);
END IF;
v_schedule := 'S_' || v_job;
SELECT COUNT(*)
INTO i_count
FROM user_objects t
WHERE t.OBJECT_TYPE = 'SCHEDULE'
AND t.OBJECT_NAME = upper(v_schedule);
IF i_count > 0
THEN
DBMS_SCHEDULER.DROP_SCHEDULE(v_schedule);
END IF;
DBMS_SCHEDULER.CREATE_SCHEDULE(schedule_name => v_schedule,
start_date => SYSTIMESTAMP,
repeat_interval => 'FREQ=DAILY; BYHOUR=2;',
comments => 'Run at 2 every 24 hours');
DBMS_SCHEDULER.CREATE_JOB(job_name => v_job,
job_type => 'STORED_PROCEDURE',
job_action => 'DELETEHISTORYDATA.P_DELETE_HISTROY_DATA',
schedule_name => v_schedule,
enabled => TRUE,
auto_drop => FALSE);
COMMIT;
EXCEPTION
WHEN OTHERS THEN
const.log_error_to_table(SQLCODE, SQLERRM, 'fail to create job ' || v_job);
END init_job_procedure;
/
call job_procedure();
drop procedure job_procedure;
发表评论
-
执行sql文件
2011-11-06 16:52 907spool $HOME/logs/createtables.l ... -
创建package样例
2011-11-06 16:50 552create or replace procedure pac ... -
创建procedure样例
2011-11-06 16:51 504create or replace procedure pro ... -
创建sequence样例
2011-11-06 16:52 623create or replace procedure seq ... -
创建同义词样例
2011-11-06 16:52 903create or replace procedure syn ... -
alter table tablename cache
2011-11-01 16:33 0oracle有3种buffer pool 1.default ... -
truncate和delete的区别
2011-11-01 16:13 1437删除表中数据的方法有delete和truncate,delet ... -
FlashBack table的一点理解
2011-11-01 14:52 8141.Flashback Table功能描述 ... -
对row movement的一点理解
2011-11-01 14:26 1827ROW MOVEMENT特性最初是在8i时引入的,其目的是提高 ... -
创建表样例
2011-11-01 14:07 771create or replace procedure tab ... -
创建临时表样例
2011-11-01 11:06 1168Oracle8i及以上版本中可 ... -
创建自定义类型样例
2011-10-31 19:38 728create or replace procedure typ ... -
创建视图样例
2011-10-31 19:22 830create or replace view view_nam ... -
创建函数样例
2011-10-31 19:14 519create or replace procedure fun ...
相关推荐
在样例中,你可能会看到如何创建这些工作单元和转换,并设置它们之间的依赖关系。 2. **控件操作** Kettle包含多种控件,如"表输入"(Table Input)用于从数据库读取数据,"文本文件输出"(Text File Output)用于...
Quartz定时调度样例 Quartz是 Java 中的一种流行的开源作业调度框架,广泛应用于各种企业级应用系统。它提供了强大的作业调度功能,允许开发者轻松地创建和管理各种类型的作业。今天,我们将通过一个简单的示例来...
本资料"SQL语言学习样例数据.rar"包含两个文本文件,"populate.txt"和"create.txt",分别用于创建数据库结构和填充数据,是学习SQL语句DML(Data Manipulation Language)的良好实践。 首先,"create.txt"文件中...
开发者可以创建自定义的Job类,实现业务逻辑,然后通过Scheduler实例来安排触发器。 3. **API设计**:为了实现前端对定时任务的控制,需要设计一套RESTful API接口,如POST /tasks/new 创建任务,DELETE /tasks/{id...
Quartz 是一个开源的作业调度库,专门用于在 Java 中创建简单或复杂的调度任务。它为程序员提供了方便的方式来安排他们的工作。Quartz 的核心概念包括 Job、SchedulerFactory、JobDetail、CronScheduleBuilder、...
【SparkDemo学习样例】是针对Apache Spark框架与Scala编程语言的一个实践教程,它提供了丰富的示例代码,帮助初学者和开发者深入理解如何在大数据处理中应用Spark和Scala。这个资源已被验证为高质量且非常实用。 ...
文件如`job_industry.sql`等可能是创建数据库表的SQL脚本,用于定义数据结构和初始数据填充。 2. **Echarts**:Echarts是百度开发的一个优秀的JavaScript可视化库,支持丰富的图表类型,如柱状图、条形图、折线图和...
现在,让我们看看如何结合这两个注解来创建一个示例作业: ```java import org.quartz.Job; import org.quartz.JobDataMap; import org.quartz.JobExecutionContext; import org.quartz.JobExecutionException; ...
开发人员需要创建一个实现 `org.quartz.Job` 接口的类,并在 `execute` 方法中编写任务的执行逻辑。 2. **Trigger**:触发器负责决定何时启动 Job。Quartz 提供了多种类型的 Trigger,如 SimpleTrigger(一次性或...
Quartz是一个开源的作业调度框架,它允许开发者创建、调度和管理任务。Quartz的核心概念包括Job(任务)、Trigger(触发器)和Calendar(日历)。Job定义了要执行的任务,Trigger决定何时触发Job,而Calendar可以...
3. **Job提交与监控**:示例可能会展示如何使用Job类提交MapReduce作业,并通过JobTracker或YARN Resource Manager监控作业状态。 4. **Hadoop配置**:书中可能包含关于配置Hadoop集群的示例,比如修改core-site....
<job-tracker>${jobTracker}</job-tracker> ${nameNode} <name>spark.master <value>yarn-cluster <name>spark.jars <value>/path/to/your/jar <main-class>org.apache.spark.sql.hive....
驱动代码负责创建并配置Job实例,设置输入输出路径,并启动MapReduce任务。 ##### 示例代码: ```java public static void main(String[] args) throws Exception { Configuration conf = new Configuration(); ...
转换和 Job 流程可以保存在数据库中,例如 r_job 表,保存 job 的 id、name、status、执行时间、创建时间、修改时间等信息。建表语句为:DROP TABLE IF EXISTS r_job; CREATE TABLE r_job (id INTEGER PRIMARY KEY, ...
这个压缩包中的项目很可能包含了上述所有组成部分,包括配置文件、Java配置类、数据库脚本、样例Job和Step实现等。你可以通过解压文件,导入到IDE(如IntelliJ IDEA或Eclipse)中,运行并调试,以深入理解SpringBoot...
##### 1.3 如何创建和运行一个样例程序 为了帮助用户快速上手,IHD 2.2提供了一系列示例程序。这些示例覆盖了Hadoop核心功能及附加组件的主要使用场景,通过简单的步骤即可完成样例程序的编译和运行。 #### 二、...
在Spring Batch中,Job通常通过`@Configuration`类定义,并使用`@Bean`注解创建。Job配置包含启动、暂停、恢复和终止Job的逻辑。 2. **Step配置**:Step是Job的基本执行单元,负责处理一部分数据。每个Step包含一个...
4. JobScheduler:为了更有效地调度后台任务,Android 5.0引入了JobScheduler API。通过示例,开发者可以学习如何创建和注册JobService,以便在满足特定条件时执行任务,比如在网络可用或设备充电时。 5. Power ...
这些表分别代表供应商(Supplier)、产品(Product)、项目(Job)和供应商-产品-项目的关联关系。每个表都有各自的字段,例如S表有Sno(供应商编号,主键),Sname(供应商名称),Status和City。P表有Pno(产品...