我尝试将整个表从一个mysql数据库复制到另一个。这几乎适用于
INSERT INTO `new-db`.`table`
SELECT * FROM `old-db`.`table`;
但是,ENUM字段未正确传输 - 它们始终为空。
但是正在运行
INSERT INTO `new-db`.`table` (an_enum_field)
SELECT an_enum_field FROM `old-db`.`table`;
正常工作。
有什么办法可以用第一个语句正确复制ENUM字段吗?
答案 0 :(得分:0)
两个表之间的列顺序必须相同。 否则带*的魔术语句无法正确映射值。
明确地命名所有列有帮助(问题的第二个例子)。