oracle 将表名和字段名变为大写(转)

当使用powerdesigner创建数据库时要注意大小写。
注:以下脚本在oracle 10g,11g上正确执行
1.批量将表名变为大写
[sql] view plain copy
 
 print?
  1. begin  
  2.    for c in (select table_name tn from user_tables where table_name <> upper(table_name)) loop  
  3.        begin  
  4.           execute immediate 'alter table "'||c.tn||'" rename to '||c.tn;  
  5.        exception  
  6.           when others then  
  7.              dbms_output.put_line(c.tn||'已存在');  
  8.        end;  
  9.    end loop;   
  10. end;  
2.批量将空间内所有表的所有字段名变成大写
[sql] view plain copy
 
 print?
  1. begin  
  2.   for t in (select table_name tn from user_tables) loop  
  3.       begin  
  4.          for c in (select column_name cn from user_tab_columns where table_name=t.tn) loop  
  5.              begin  
  6.                 execute immediate 'alter table "'||t.tn||'" rename column "'||c.cn||'" to '||c.cn;  
  7.              exception  
  8.                 when others then  
  9.                    dbms_output.put_line(t.tn||'.'||c.cn||'已经存在');  
  10.              end;  
  11.          end loop;  
  12.       end;  
  13.   end loop;   
  14. end;  
3.将用户空间的所有表名及所有字段变为大写
[sql] view plain copy
 
 print?
  1. begin  
  2.    for t in (select table_name tn from user_tables where table_name <> upper(table_name)) loop  
  3.        begin  
  4.           for c in (select column_name cn from user_tab_columns where table_name=t.tn) loop  
  5.               begin  
  6.                  execute immediate 'alter table "'||t.tn||'" rename column "'||c.cn||'" to '||c.cn;  
  7.               exception  
  8.                  when others then  
  9.                     dbms_output.put_line(t.tn||'.'||c.cn||'已经存在');  
  10.               end;  
  11.           end loop;  
  12.         
  13.           execute immediate 'alter table "'||t.tn||'" rename to '||t.tn;  
  14.           exception  
  15.              when others then  
  16.                 dbms_output.put_line(t.tn||'已存在');  
  17.        end;  
  18.    end loop;   
  19. end;  
posted @ 2016-11-29 15:34  lucky.yang  阅读(92)  评论(0)    收藏  举报