如何将csv文件导入到MySQL工作台?

我有一个CSV文件。 它包含140万行数据,所以我无法在Excel中打开该csv文件,因为它的限制大约是100万行。

因此,我想在MySQL工作台中导入这个文件。 这个csv文件包含像

"Service Area Code","Phone Numbers","Preferences","Opstype","Phone Type" 

我正在尝试在名为“dummy”的MySQL工作台中创build一个包含类似列的表

 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

我猜你错过了ENCLOSED 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文件的完整path

加载数据Infile – MySQL文档

如果你有更小的数据集,通过GUI来实现它的方法是:

  1. 打开一个查询窗口
  2. SELECT * FROM [table_name]
  3. 从菜单栏select导入
  4. 按结果网格下方的右下angular的应用

在这里输入图像说明

参考: http : //www.youtube.com/watch?v = tnhJa_zYNVY

在SCHEMAS下的导航器中,右键单击您的模式/数据库并select“表格数据导入向导”

适用于Mac。

目前无法在所有平台上导入CSV(使用MySQL Workbench),也不build议这个文件是否与MySQL服务器主机位于同一个主机上。

但是,您可以使用mysqlimport 。

例:

 mysqlimport --local --compress --user=username --password --host=hostname \ --fields-terminated-by=',' Acme sales.part_* 

在这个例子中, mysqlimport被指示加载所有名为“sales”的文件,扩展名以“part_”开头。 这是加载在“split”例子中创build的所有文件的一种便捷方式。 使用–compress选项最大限度地减lessnetworkingstream量。 –fields-terminated-by =','选项用于CSV文件, – – 本地选项指定传入数据位于客户端上。 如果没有–local选项,MySQL将查找数据库主机上的数据,因此请始终指定–local选项。

AWS RDS文档中有关于此主题的有用信息。

如果服务器驻留在远程计算机上,请确保文件在远程计算机上,而不在本地计算机上。

如果该文件位于mysql服务器所在的同一台机器上,请确保mysql用户有权读取/写入该文件,或将该文件复制到mysql模式目录中:

在我的情况下在Ubuntu的是:/var/lib/mysql/db_myschema/myfile.csv

此外,不是相对于这个问题,但如果你有新行的问题,使用sublimeTEXT将行结束更改为WINDOWS格式,保存文件并重试。

这似乎有点棘手,因为它真的困扰了我很长一段时间。

你只需要打开表格(Rick点击“Select Rows- Limit 10000”),你将打开一个新的窗口。 在这个新窗口中,你会发现“导入图标”。 然后事情完成