【发布时间】:2017-10-05 06:33:29
【问题描述】:
我正在尝试创建存储过程来创建计划任务。它将每天执行我的 .sql 脚本。我的 .sql 文件包含创建表和删除表脚本。像这样
Drop table a608232_new_62K_master;
create table a608232_new_62K_master as select A.* from
a608232_MRD_DATA_62K_W_Account A inner join a608232_new_mids B
on A.MID = B.MID;
更多这样的语句每天更新该表。我应该如何处理这个问题。我正在尝试创建过程,以便我可以安排任务来执行该过程。或者在 oracle 中是否有其他方法。
ps:我只有 1 个包含所有语句的 .sql 文件。
【问题讨论】:
-
您是否考虑过使用 Oracle Scheduler 调度作业?
-
@TedatORCL.Pro 是的,但我不知道如何使用它来执行 .sql 文件?
-
为什么要将脚本保存在文件中?有什么理由吗?它们会是 pl/sql 块吗?
-
@TedatORCL.Pro 是的,它们可以是 PL/SQL 块。我以前没有这样做过。所以不熟悉语法。如果我将它们保存在 PL/SQL 块中,我应该如何进行
-
BEGIN DBMS_SCHEDULER.CREATE_JOB (job_name => 'update_sales', job_type => 'STORED_PROCEDURE', job_action => 'OPS.SALES_PKG.UPDATE_SALES_SUMMARY', start_date => '28-APR-08 07.00.00 PM Australia/Sydney', repeat_interval => 'FREQ=DAILY;INTERVAL=2', /* 每隔一天 */ end_date => '20-NOV-08 07.00.00 PM Australia/Sydney', auto_drop => FALSE, job_class => 'batch_update_jobs', cmets => '我的新工作');结尾; /
标签: sql oracle stored-procedures job-scheduling