您的位置:首页 > 数据库 > Oracle

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

2014-06-11 15:40 375 查看
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;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  oracle