【问题标题】:Table creation from CSV file with header从带有标题的 CSV 文件创建表
【发布时间】:2017-10-15 17:44:45
【问题描述】:
我想在不手动创建表的情况下将带有标题(100 多列)的大型 csv 文件导入 MySQL。
我已准备好使用从 MySQL 工作台到 Sqoop 或任何其他 Hadoop 工具的任何工具。
已尝试搜索解决方案,但没有找到任何正确的答案(或)答案太旧了,说这是不可能的。
【问题讨论】:
-
查看使用 MySQL 的 LOAD DATA 命令 here。它能够非常快速地将大量 CSV 数据直接导入到表格中。
标签:
mysql
csv
mysql-workbench
sqoop
【解决方案1】:
我发现在 MySQL 中创建大表(100 多列)的最简单、最快捷的方法是使用 MySQL Workbench:
- 创建新架构
- 右键单击表格 -> 表格数据导入向导。
- 选择包含标题的 CSV 文件。
- 交叉检查列类型,如果需要更改列类型和名称。
- 点击导入创建表格并导入数据。
如果要手动加载数据:
load data infile '/filepath/filename.csv' into table tablename_table fields terminated by ',' enclosed by '"' lines terminated by '\n'(col1,col2,coln);
可以从 MySQL Workbench 生成的 create 命令中获取列列表。