MySQL:从CSV获取列头名称

时间:2013-11-06 02:05:24

标签: mysql csv import

我有一个MySQL数据库,我从CSV中导入几个大型数据集进行分析。有没有人开发过一个可以做这两件事的SQL脚本?

  1. 阅读CSV的第一行并提取所有列名称,
  2. 浏览整个CSV文件并确定每列的最长字段
  3. 我的想法是,如果我可以在MySQL中获取此信息,那么我可以使用该信息创建具有正确列名和每列长度的表。

    有什么想法吗?

2 个答案:

答案 0 :(得分:2)

有一个名为sqlizer.io的工具可以完全满足您的要求。上传您的CSV文件并勾选“Has Header Row”选项。它将分析CSV文件的内容并生成一个CREATE TABLE语句,其中包含顶行的列名和正确的数据类型,以便能够导入数据。

它还将创建一组INSERT语句来导入您的数据。

答案 1 :(得分:0)

想法?肯定。

Learn Perl,安装DBD::mysql与服务器通信,TEXT::CSV阅读文件,明天这个时候应该有用。

对于奖励积分,您还可以实现从Excel中读取XLSX文件的功能。