我有一些 mysql 表 products
,我使用 mysqlimport从 CSV 文件加载数据。我使用以下命令创建了另一个表 copy_products:CREATE TABLE copy_products LIKE products;
现在,当我尝试使用 mysqlimport 将数据加载到 copy_products 时,它会给出与旧消息相同的消息:"db.copy_products: Records: 1000 Deleted: 0 Skipped: 0 Warnings: 0"
这表明 CSV 文件中的所有行都已插入(据我所知)。但是表是空的,没有记录!那么这里有什么线索吗?使用 LIKE 语句创建的表在某些方面是否特殊?
最佳答案
我认为您需要在创建表的克隆之后。您需要按如下方式在新表中插入记录:
> CREATE TABLE copy_products LIKE products;
> INSERT INTO copy_products SELECT * FROM products GROUP BY id;
如果你想在一条语句中做到这一点,请尝试以下操作:
CREATE TABLE copy_products SELECT * FROM products group by id;
关于mysqlimport 不会将记录加载到使用 LIKE 语句创建的表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33024856/