我正在运行此脚本来重命名给定数据库中的所有表前缀,我正在使用MySQL Workbench进行此操作,查询可以编译,但是表名未重命名,我缺少什么?
SET @database = "database_name";
SET @old_prefix = "old_prefix_";
SET @new_prefix = "new_prefix_";
SELECT
concat(
"RENAME TABLE ",
TABLE_NAME,
" TO ",
replace(TABLE_NAME, @old_prefix, @new_prefix),
';'
) AS "SQL"
FROM information_schema.TABLES WHERE TABLE_SCHEMA = @database;
我已经相应地替换了变量,以匹配我的数据库名称和表前缀(旧的,新的)。