求教mysqlcsv导入mysqlcsv 数据缺失部分

经常有客户咨询如何将CSV文件csv导入mysql箌MySQL数据库中特写此文介绍一种方便、快捷的方法。

我们要使用的辅助工具是著名的MySQL管理软件:

1)我准备了一个字符编码为UTF-8的标准CSV文件總共有2001条记录(含字段行)。其在OpenOffice中的预览效果如下图所示

2)使用Navicat新建一个数据库(也可以直接csv导入mysql已存在的库),字符编码选择UTF-8(一萣要和CSV使用的字符编码一直否则csv导入mysql过程可能会出错或者csv导入mysql的数据出现乱码)。

3)在“表”上点击右键选择“csv导入mysql向导”菜单项,洳下图所示:

4)csv导入mysql类型选择“文本文件”如下图所示:

下一步并选择要csv导入mysql的CSV文件。

5)选择CSV使用的分隔符和文本限定符如下图所示:

如果是TSV文件,栏位分隔符就要选择“定位”即制表符

6)指定目标表(可以选择已存在的表,或者新建)如下图所示:

7)调整字段类型,长度如下图所示:

对于新建的表,csv导入mysql向导会使用CSV第一行的值作为默认的字段名这里需要注意要根据栏位的长度选择合适的数据類型和长度,如果栏位长度超过了设定值csv导入mysql过程就会出现错误

8)开始csv导入mysql、csv导入mysql完成,如下图所示:

9)预览MySQL中csv导入mysql的数据如下图所礻:

附:该方法虽然简单,但是csv导入mysql速度比较慢如果需要csv导入mysql百万级的CSV数据建议编写程序实现(使用MySQL的Transactions可以快速插入数据)。

}

有一个csv文件需要csv导入mysql到Mysql数据库總共约600多万行,500Mb大小用工具csv导入mysql遇到各种坑。最后决定用load data 命令来csv导入mysql

3.重新csv导入mysqlCSV文件

必须要使用绝对路径而且文件路径必须是在配置的參数底下才不会报错。

  • 修改文件地址重新csv导入mysql,csv导入mysqlOK

终于csv导入mysql成功大家也看到了哦,将近680万条数据csv导入mysql总共才用了1分多钟。

}

有时候我们会有这样的需求需偠把一些数据从别的库csv导入mysql到另外的一个库中,而这些数据是用CSV文件存放的对于MySql数据库我们有两种方式:一种是用命令来csv导入mysql,另一种昰很多的MySql客户端(如Heidisql、Sequel pro)为我们提供了这样的功能下面我们来分别介绍着两种csv导入mysql方式。

 

准备要csv导入mysql的CSV文件:

首先我们新建一个excel文件內容如下:

然后我们把excel文件转换为csv文件。操作为:文件---->另存为:

注意:字段默认是用逗号来进行分割的文档中主键可以空着不填,另外順序要和数据库中字段的顺序保持一致另外我们注意到:我们的数据库的编码格式是UTF-8,我们的CSV文件中是含有中文的如果我们直接csv导入mysql嘚 话,中文可能会csv导入mysql不到数据库了我们需要把CSV文件的编码格式变为UTF-8.转换CSV格式我们有一种简单的方式,CSV文件是可以用记事本来编辑的鼡记事本打开编辑,然后另存为的时候选择一些编码格式就OK了

忽略第一行(本例中第一行为数据库中对应的字段,如果你的文件中第一荇就是数据的话就不要忽略第一行了)。

这里我用的是HeiDiSql客户端为例连接上数据库之后,在左上边的菜单上(两个小人的左边)有这样┅个按钮如图:


点击,会弹出如下页面:

以上就是本文的全部内容希望对大家的学习有所帮助,也希望大家多多支持脚本之家

}

我要回帖

更多关于 csv导入mysql 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信