我目前正在寻找一种方法来重命名数据库中的所有表。但是我不想重命名为整个表名(您可能会发现很多关于在SO上重命名整个表名的问题)。因此,在我的情况下,我在每个表名之前都有一个前缀wp_
,我将用tnd_
代替。
那么有什么聪明的方法可以做到这一点吗?因为我有大约200多个表,所以我不想手动更改每个表名。
感谢您的帮助!
答案 0 :(得分:1)
我认为它会起作用:
SELECT Concat('ALTER TABLE `', TABLE_NAME, '` RENAME TO `dr_', TABLE_NAME, '`;')
FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '<name of your db>';
参考:How to add prefix of all tables in mysql
如果您使用PHP admin,还可以检查:Rename and add prefix to all tables with phpMyAdmin