【发布时间】:2013-04-26 17:15:51
【问题描述】:
我是 mysql 的业余爱好者..你能告诉我如何在单个查询中更改整个数据库的表前缀...我可以手动完成,但是更改所有表前缀非常耗时.请帮帮我。就像 isc_administrator_log 到 cus_administrator_log 意味着 isc_ 到 cus_
我找到了这两个解决方案,但都不明白。
SELECT
GROUP_CONCAT('RENAME TABLE `', TABLE_SCHEMA, '`.`', TABLE_NAME, '` TO `',
TABLE_SCHEMA, '`.`prefix_', TABLE_NAME, '`;' SEPARATOR ' ')
FROM `TABLES` WHERE `TABLE_SCHEMA` = "test";
和
SELECT
CONCAT('RENAME TABLE ', GROUP_CONCAT('`', TABLE_SCHEMA, '`.`', TABLE_NAME,
'` TO `', TABLE_SCHEMA, '`.`prefix_', TABLE_NAME, '`')) AS q
FROM
`information_schema`.`Tables` WHERE TABLE_SCHEMA='test';
【问题讨论】:
-
给我们同样的输入和输出示例
-
为什么不只做一个,在文本编辑器中修改表格语句,复制粘贴,然后运行脚本。不过,您的问题很有趣。
-
@Pete Bel 我无法理解这些查询,因此我提出了这个问题..如果你理解请分享你的观点......我运行了这些查询..但在这两种情况下它都返回 NULL
标签: mysql phpmyadmin prefix