存储过程批量生成的心田脚本

  声明
  
  l_snap_start数量:=40078;
  l_snap_end数量:=40081;
  l_dir VARCHAR2 (50):=癆WRTEST”;
  
  l_last_snap号:=零;
  l_dbid号:=2778659381;
  l_file UTL_FILE.file_type;
  l_file_name VARCHAR (50);
  光标cur_inum是选择从dba_hist_snapshot instance_number dbid=l_dbid集团由instance_number instance_number秩序;
  
  
  开始
  
  在cur_inum l_instance_number循环
  l_last_snap:=零;
  在(选择cur_snap snap_id
  从dba_hist_snapshot
  instance_number=l_instance_number的地方。instance_number
  和snap_id l_snap_start和l_snap_end
  ORDER BY snap_id)
  循环
  如果l_last_snap NOT NULL
  l_file:=实现的。fopen (l_dir, awr_ | | l_instance_number。“_”instance_number | | | | l_last_snap | | ' _ ' | | cur_snap。snap_id | |”。html ', ' w ', 32767);——40162
  
  (选择输出的cur_rep
  从表(DBMS_WORKLOAD_REPOSITORY。awr_report_html (l_dbid l_instance_number。instance_number l_last_snap, cur_snap.snap_id)))
  循环
  实现的。put_line (l_file cur_rep.output);
  结束循环;
  UTL_FILE.fclose (l_file);
  如果;
  l_last_snap:=cur_snap.snap_id;——40161
  结束循环;
  结束循环;
  
  除了
  当别人然后
  如果UTL_FILE.is_open (l_file)然后
  UTL_FILE.fclose (l_file);
  如果;
  提高;
  结束;

存储过程批量生成的心田脚本