我想知道每天运行一些 SQL 代码的最快、最简单和最有效的方法是什么?我们有许多想要运行的更新脚本,但现在没有简单的方法可以运行。我似乎在 Oracle SQL Developer 中找不到任何选项。
(我想一种方法可能是每晚运行一个 PHP 文件,尽管从经验来看它有严重的权限问题,并且每晚都会打开一个 IE 实例,之后无法关闭它)
谢谢
最佳答案
Oracle 数据库有许多用于运行计划作业的选项,这意味着您不必依赖操作系统(如 Linux/Unix 中的 cron)。
您可以使用较旧的 DBMS_JOB包或更新更复杂的DBMS_SCHEDULER也有10g。
例子:
BEGIN
DBMS_SCHEDULER.create_job (
job_name => 'gather_stats_for_scott', -- this name is arbitrary
job_type => 'PLSQL_BLOCK', --see possible job types here http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28419/d_sched.htm#i1000363
job_action => 'BEGIN DBMS_STATS.gather_schema_stats(''SCOTT''); END;',
start_date => SYSTIMESTAMP, --start now
repeat_interval => 'freq=daily',
end_date => NULL,
enabled => TRUE,
comments => 'This job does this and that' --arbitrary comment
);
END
关于sql - 每天运行一个 Oracle SQL 更新脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8078460/