可以使用这里提到的mysql:
https://www.electrictoolbox.com/rename-multiple-tables-mysql/
oracle可以采取类似的行动吗?
类似的东西:
Alter table tbl1 rename to new1, tbl2 to new2;
答案 0 :(得分:1)
我能想到的另一种方法是,您可以使用ALTER
中的一个select
生成多个ALL_TABLES
命令。
SELECT 'Alter table '
||table_name
||' rename to '
||table_name
||'_NEW'
||rn||';' Alter_command
FROM
(SELECT ROWNUM rn ,
a.*
FROM ALL_TABLES a
WHERE TABLE_NAME IN ('<LIST_OF_TABLES>')
) ORDER BY TABLE_NAME;
输出:
Alter table ABCD_TMP rename to ABCD_TMP_NEW1509;
Alter table ABCD_TMP3 rename to ABCD_TMP3_NEW1510;
Alter table ACCESS$ rename to ACCESS$_NEW46;
Alter table ACCOUNT rename to ACCOUNT_NEW1549;
Alter..
.....