嗨,我正在尝试使用MySql Workbench数据导入工具导入.csv文件(数千条记录).但是它会停止导入前5个记录.
在研究了.csv文件之后,我可以看到第5行有一个双引号 – 见下文;
1,90945601,123.123.123.123,Fujitsu,Esprimo Q900,YLBX097807192,,01/07/2011,408000085A,G.039,Weekend PT (BS),,,,
2,90456978905,123.123.123.123,Fujitsu,Esprimo Q900,YLBX009787188,,01/07/2011,408089005A,"G,.039",Joe (ert),,,,
3,90945610,123.123.123.123,Fujitsu,Esprimo Q900,YLBX007897202,,01/07/2011,408097805A,2.012,Jo,,,,
4,90945978616,,Apple ,Mac ZOPF00PJ ,DGKLM05BF8J9,,01/10/2013,408005A,1.029,Jim and ICRH,,,wif,
5,90456789917,,D4M ,FlexiBasic Kiosk ,,,01/08/2013,408098705A,1.029,,,,"19"" Saw Screen with Artwork",
6,94560918,143.117.198.197,3M,9100BC,91201338,,01/07/2013,408005A+J101,G.036,SD RF,,,Dual (91201567338) ,
我试图在导入过程中配置设置,但它仍然无效 – 请参阅图像;
无法将“字段分隔符”更改为逗号,只提供了三个选项.
我手动从csv中删除了第5行,这次导入了超过100条记录,但是再一次,它在下一个双引号上打开了“.问题是csv文件包含数千个包含大小以英寸为单位的描述的项目.
我是否可以进行任何其他更改而无需手动删除我的.csv文件中的所有双引号?
我也尝试了PhpMyAdmin,也没有在那里工作.
任何建议赞赏.
解决方法:
您可以尝试使用sed和替换| (“双引号”字符的(管道字符 – 通常在数据转储中找不到))
sed -i 's/"/|/g' My_File.csv
sed -i进行内联替换 – 在弄乱原始文件之前进行备份.如果你在Windows上 – 就像你看起来那样,你可以从答案here获得sed功能,或者使用你选择的编辑器 – 例如VIM for Windows或你喜欢的任何东西.
然后,当您加载数据时,在表格上执行REPLACE()
标签:mysql,csv,import,phpmyadmin,mysql-workbench
来源: https://codeday.me/bug/20190806/1604744.html