我在程序包里面有一个程序,我必须每天手动运行。 如何在oracle 10g中通过oracle automaticaly完成它。
执行程序有3个输入(2个,1个varchar)和1个输出(varchar)
输入值对我来说将保持不变,但如果我必须更改它,我会这样做。 任何人都可以通过简单的例子来解释我。
由于 阿维
答案 0 :(得分:2)
查看dbms_job包。它易于使用,可满足您的需求。
答案 1 :(得分:1)
您可以使用DBMS_JOB.iSubmit函数,如下所示。
BEGIN
DBMS_JOB.isubmit ( job => 61,
what => 'YOUR_PROCEDURE;',
next_date => to_date('03.10.2014 00:30:00','dd.MM.yyyy HH24:Mi:ss'), -- start now INTERVAL => 'sysdate + 1' -- Run every day );
COMMIT;
END;
JOB:您可以使用未在user_jobs中使用的ID。您可以使用以下查询进行检查。
select * from user_jobs;
内容:";"的程序名称在末尾。 Next_date:您希望您的工作运行的时间。 间隔:你工作的时间。应该是' sysdate + 1'每天。
您可以使用以下脚本删除它:
begin DBMS_JOB.REMOVE(JOB => 61); end;