oracle中,改變表名和字段名的大小寫


1.將表名和字段名改為大寫  見-- http://www.cnblogs.com/wenboge/articles/4121331.html

 

2.將表名和字段名改為小寫

①改表名為小寫

begin
   for c in (select table_name tn from user_tables where table_name <> lower(table_name)) loop
       begin
          execute immediate 'alter table '||c.tn||' rename to "'||lower(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 "'||lower(c.cn)||'"';
             exception
                when others then
                   dbms_output.put_line(t.tn||'.'||c.cn||'已經存在');
             end;
         end loop;
      end;
  end loop; 
end;

 

注:

1.如果字段和表名都要改為小寫,先改字段,再改表。

2.如果表名獲取字段名改為小寫以后,要在查詢語句中將表名和字段名都要加上雙引號

例.

 表名小寫 :select * from "department";

  字段名小寫:select "id" from "department";

我也不知道為啥這樣

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM