oracle 利用存储过程为表动态建立索引

来源:互联网 发布:青岛邮箱数据 编辑:程序博客网 时间:2024/06/05 06:06
create or replace procedure createProcedure_test as
table_name varchar(20);
sqlt varchar(200);
index_name varchar(100);
--Cursor cursor is select table_name from user_tables where table_name like 'NT_SENT_%';


begin

--for table_name in cursor LOOP
for idx in ( select table_name from user_tables where table_name like 'NT_SENT_%')
loop
begin
   index_name :='index_'||idx.table_name;
   sqlt :=  'create index '||index_name ||' on '|| idx.table_name||'(C_NT_TXN_ID)';
   dbms_output.put_line(sqlt);
   EXECUTE IMMEDIATE sqlt;
           --错误后循环继续执行。
           EXCEPTION
           WHEN OTHERS THEN
                dbms_output.put_line(SQLERRM);

end;
end LOOP;
end createProcedure_test;


0 0
原创粉丝点击