我想创建一个PL / SQL块,尝试使用dbms_scheduler包运行作业,我想收集所有10个模式的模式统计信息 . 例如:
begin
dbms_scheduler_create_job(
job_name => ....,
job_type = > 'PL/SQL BLOCK',
job_action => 'declare
sch_lst dbms_stats.objecttab := dbms_stats.objecttab()
begin
sch_lst.extend(10);
sch_lst(1).ownname := "ab"; --ab is the Schema name
sch_lst(2).ownname := "cd";
.........
sch_lst(10).ownname := "kl";
dbms_stats.gather_schema_stats( ......)
end;
/
',
start_date => sysdate,
..........);
end;
/
2 回答
首先,您可以创建这样的过程:
然后从调度程序调用:
EDIT : 您可以用以下代码替换您的程序代码:
在分析任务中包含所有普通模式 .
在
start_date => sysdate,
之前删除 / 并且还在模式名称而不是 " (双引号)中使用 '' (双单引号),因为它位于声明语句中,该声明已在单引号内 .然后编译这个 . 你可以使用
execute dbms_schedule.run_job('<job_name>');
检查工作