Create database NewDatabaseName;
SET @oldSchemaName = 'OldDatanaseName';
SET @newSchemaName = 'NewDatabaseName';
SET SESSION group_concat_max_len = 4294967295;
SELECT CONCAT('RENAME TABLE ', GROUP_CONCAT(mySchema.table_schema,'.`',table_name, '` TO ',@newSchemaName,'.`',table_name,'` \n'),';') AS Statement
FROM information_schema.TABLES AS mySchema
WHERE mySchema.table_schema LIKE @oldSchemaName
GROUP BY mySchema.table_schema
;
运行以上返回结果中的SQL.
例如:
RENAME TABLE OldDatanaseName.`table1` TO NewDatabaseName.`table1`
,OldDatanaseName.`table2` TO NewDatabaseName.`table2`
,OldDatanaseName.`table3` TO NewDatabaseName.`table3` ;
最后将旧的数据库中自定义的存储过程在新的数据库中运行一次就可以了.
这篇博客介绍了如何使用SQL语句批量重命名数据库中的表,从'OldDatanaseName'到'NewDatabaseName',并建议在执行完重命名操作后,将旧数据库中的自定义存储过程在新数据库中重新运行以确保完整迁移。
1573

被折叠的 条评论
为什么被折叠?



