mysql转oracle后表名自动引号小写问题

 

Navicat执行mysql转oracle后,表名以及字段自动加了引号,oracle默认都是大写,下面执行语句可以一键设置小写名称转大写.亲测可用!

begin
   for t in (select table_name tn from user_tables where table_name <> upper(table_name)) 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;

          execute immediate 'alter table "'||t.tn||'" rename to '||t.tn;
          exception
             when others then
                dbms_output.put_line(t.tn||'已存在');
       end;
   end loop;
end;

已有 0 条评论

    欢迎您,新朋友,感谢参与互动!
    • OωO
    • |´・ω・)ノ
    • ヾ(≧∇≦*)ゝ
    • (☆ω☆)
    • (╯‵□′)╯︵┴─┴
    •  ̄﹃ ̄
    • (/ω\)
    • ∠( ᐛ 」∠)_
    • (๑•̀ㅁ•́ฅ)
    • →_→
    • ୧(๑•̀⌄•́๑)૭
    • ٩(ˊᗜˋ*)و
    • (ノ°ο°)ノ
    • (´இ皿இ`)
    • ⌇●﹏●⌇
    • (ฅ´ω`ฅ)
    • (╯°A°)╯︵○○○
    • φ( ̄∇ ̄o)
    • ヾ(´・ ・`。)ノ"
    • ( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
    • (ó﹏ò。)
    • Σ(っ °Д °;)っ
    • ( ,,´・ω・)ノ"(´っω・`。)
    • ╮(╯▽╰)╭
    • o(*////▽////*)q
    • >﹏<
    • ( ๑´•ω•) "(ㆆᴗㆆ)
    • (。•ˇ‸ˇ•。)
    • 颜文字