每天运行Oracle SQL更新脚本

xn *_* dx 3 sql oracle sql-update

我想知道每天运行一些SQL代码最快,最简单,最有效的方法是什么?我们有许多我们想要运行的更新脚本,现在没有简单的方法.我似乎无法在Oracle SQL Developer中找到任何选项.

(我想一种方法可能是每晚运行一个PHP文件,虽然从经验来看它有严重的权限问题,并且每晚都打开一个IE实例,之后无法关闭它)

谢谢

bpg*_*rgo 10

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
Run Code Online (Sandbox Code Playgroud)