我需要复制三个表并在同一个MySQL数据库中重命名它们。有谁知道我可以执行的声明,还是我需要导出和导入?
答案 0 :(得分:0)
答案在StackOverflow上,隐藏在数据库重命名操作下(可以通过创建新数据库重命名数据库,然后“移动”表格。)
https://stackoverflow.com/a/2298602/584490
RENAME TABLE db.table TO db.table;
从评论中说:“我刚用InnoDB数据库完成了30多个表格,使用了file_per_table设置,即使有些表格超过300万行,它也只用了1秒钟就完成了。移动存储上的文件,而不是做任何更复杂的事情... + 2如果可能的话:)“。
答案 1 :(得分:0)
您应该查看与SELECT INTO相同的mysql:http://dev.mysql.com/doc/refman/5.0/en/ansi-diff-select-into-table.html。
使用新名称创建新表,然后使用上述方法将旧表数据复制到新表。