Maison  >  Article  >  base de données  >  批量rebuild索引

批量rebuild索引

WBOY
WBOYoriginal
2016-06-07 15:22:361605parcourir

自己写了一个批量rebuild索引的存储过程: create or replace procedure sp_rebuild_indexas v_count number; cursor empCur is select owner,index_name from dba_indexes where status='UNUSABLE'; v_sql varchar2(100); v_owner varchar2(20); v_index_na

自己写了一个批量rebuild索引的存储过程:

create or replace procedure sp_rebuild_index
as 
  v_count number;
  cursor empCur is select owner,index_name from dba_indexes where status='UNUSABLE';
  v_sql  varchar2(100);
  v_owner varchar2(20);
  v_index_name varchar2(50);
BEGIN
  select count(0) into v_count from dba_indexes where status='UNUSABLE';
  if v_count>0 then
  execute immediate 'alter session set skip_unusable_indexes=false';
  
  open empCur;
  
   loop
    fetch empCur into v_owner,v_index_name;
    v_sql:='alter index '||v_owner||'.'||v_index_name||' rebuild';
    execute immediate v_sql;
    exit when empCur%notfound; 
   end loop;
  
  close empCur;

  end if;
END;


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn