我有一个CSV文件。 它包含140万行数据,是因为它的极限大约是1万行,我不能够打开CSV文件在Excel中。
因此,我要导入MySQL工作台此文件。 此CSV文件包含像列
"Service Area Code","Phone Numbers","Preferences","Opstype","Phone Type"
我试图创建命名为“虚拟”像含列MySQL的工作台表
ServiceAreaCodes,PhoneNumbers,Preferences,Opstyp,PhoneTyp.
CSV文件被命名为model.csv
。 我在工作台的代码是这样的:
LOAD DATA LOCAL INFILE 'model.csv' INTO TABLE test.dummy FIELDS TERMINATED BY ',' lines terminated by '\n';
但我得到这样的错误model.CSV file not found
我想你错过了封闭BY子句
LOAD DATA LOCAL INFILE '/path/to/your/csv/file/model.csv'
INTO TABLE test.dummy FIELDS TERMINATED BY ','
ENCLOSED BY '"' LINES TERMINATED BY '\n';
并指定csv文件完整路径
LOAD DATA INFILE - MySQL文档
如果你有更小的数据集,一种通过图形用户界面来实现,它是:
- 打开一个查询窗口
- SELECT * FROM [TABLE_NAME]
- 从菜单栏中选择导入
- 按下结果表格下方的右下角应用
参考: http://www.youtube.com/watch?v=tnhJa_zYNVY
在SCHEMAS下的导航器,右键单击您的架构/数据库,并选择“表格数据导入向导”
适用于MAC了。
目前,它是不可能导入CSV在所有平台(使用MySQL工作台),也不如果说文件不驻留在同一台主机在MySQL服务器主机建议。
但是,您可以使用mysqlimport的 。
例:
mysqlimport --local --compress --user=username --password --host=hostname \
--fields-terminated-by=',' Acme sales.part_*
在这个例子中mysqlimport
指示加载所有名为“销售”与开头“PART_”的扩展名的文件的。 这是加载所有的“分裂”的例子创建的文件的一种便捷方式。 使用--compress选项,以尽量减少网络流量。 所述--fields封端逐=“”选项用于CSV文件和--local选项指定输入数据位于客户端上。 如果没有--local选项,MySQL将查找数据库主机上的数据,所以总是指定--local选项。
有对这个问题的有用信息AWS RDS文档 。
如果服务器驻留在远程机器上,确保在远程机器上,而不是在你的本地计算机的文件。
如果该文件是在MySQL服务器是同一台机器,确保mysql用户有权限读取/写入文件,或格兰文件复制到MySQL的架构目录:
在我的Ubuntu的情况下,它是:/var/lib/mysql/db_myschema/myfile.csv
此外,并非相对于这个问题,但如果你有新的线路问题,请使用sublimeTEXT改变行结束WINDOWS格式,保存文件,然后重试。
这似乎有点棘手,因为它确实已经困扰了我很长一段时间。
你只需要打开表(点击右键“选择Rows-限价10000”),你会打开一个新窗口。 在这个新的窗口,你会发现“导入图标”。