ORACLE表名与列名小写转成大写

批量将表名变为大写

begin
   for c in (select table_name tn from user_tables where table_name <> upper(table_name)) loop
       begin
          execute immediate 'alter table "'||c.tn||'" rename to '||c.tn;
       exception
          when others then
             dbms_output.put_line(c.tn||'已存在');
       end;
   end loop; 
end;

批量将空间内所有表的所有字段名变成大写  此方法可能导致溢出

begin   
  for t in (select table_name tn from user_tables) loop
      begin
         for c in (select column_name cn from user_tab_columns where table_name=t.tn) loop
             begin
                execute immediate 'alter table "'||t.tn||'" rename column "'||c.cn||'" to '||c.cn;
             exception
                when others then
                   dbms_output.put_line(t.tn||'.'||c.cn||'已经存在');
             end;
         end loop;
      end;
  end loop; 
end;

  将特点表PROPERTY_INFO的所有列名小写变大写

begin
for c in (select COLUMN_NAME cn from all_tab_columns where table_name='PROPERTY_INFO') loop
begin
execute immediate 'alter table PROPERTY_INFO rename column "'||c.cn||'" to '||c.cn;
exception
when others then
dbms_output.put_line('PROPERTY_INFO'||'.'||c.cn||'已经存在');
end;
end loop;
end;

  原文地址:https://www.cnblogs.com/wenboge/articles/4121331.html

posted @ 2020-06-20 15:43  caiyitao  阅读(860)  评论(0编辑  收藏  举报