ITPub博客

首页 > Linux操作系统 > Linux操作系统 > Oracle批量重建索引

Oracle批量重建索引

原创 Linux操作系统 作者:kunshan2010 时间:2011-05-08 14:23:03 0 删除 编辑
create or replace procedure p_rebuild_all_index
   (tablespace_name 
in varchar2)
as
   sqlt 
varchar(200);
begin

    
for idx in (select index_name, tablespace_name, status from user_indexes where tablespace_name=tablespace_name and status='VALID' and temporary = 'N') loop
    
begin
           sqlt :
= 'alter index ' || idx.index_name || ' rebuild ';
           dbms_output.put_line(idx.index_name);
           dbms_output.put_line(sqlt);
           
EXECUTE IMMEDIATE sqlt;
           
--错误后循环继续执行。
           EXCEPTION
           
WHEN OTHERS THEN
                dbms_output.put_line(SQLERRM);
     
end;              
     
end loop;
end;

oracle 存储过程批量重建索引。


测试方法:

declare
    
--表空间名称
  tablespace_name varchar2(100);
begin
  tablespace_name:
='dddd';
  p_rebuild_all_index(tablespace_name);
end;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/24435147/viewspace-694762/,如需转载,请注明出处,否则将追究法律责任。

上一篇: TPC-C估算方式
请登录后发表评论 登录
全部评论

注册时间:2010-08-15

  • 博文量
    33
  • 访问量
    127797