之前开发使用工具建表,自动产生的sql都是双引号小写,导致以后写sql都要加双引号,有没有一个方法可以批量的把多个表的小写字段名都改成大写?
刚好写过这个玩意,实际上就是循环拼接动态sql来执行
BEGIN
FOR REC IN (select *
from DBA_TAB_COLS C
WHERE C.OWNER = '用户名'
AND C.TABLE_NAME in ('表A','表B','表C')
AND COLUMN_NAME <> UPPER(COLUMN_NAME) LOOP
EXECUTE IMMEDIATE ' alter table ' || REC.OWNER || '.' || REC.TABLE_NAME ||
' rename column "' || REC.COLUMN_NAME || '" to ' ||
UPPER(REC.COLUMN_NAME);
END LOOP;
END;