MYSQL csv文件名到表

时间:2016-05-04 23:46:03

标签: mysql stored-procedures mysql-workbench

是否可以搜索文件夹并获取文件名以转换为mysql表?可以在查询或存储过程中完成吗?

我是mysql的新手,到目前为止我可以读取我的数据并创建一个手动完成的表,但不知道如何自动创建一个包含文件名的表。

LOAD DATA 
LOCAL INFILE 'D:/test.csv' 
INTO TABLE test

2 个答案:

答案 0 :(得分:0)

不幸的是,LOAD DATA无法为您创建表格。该函数的语法为...

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name'
    [REPLACE | IGNORE]
    **INTO TABLE tbl_name**

必须指定表名,这意味着您必须先创建表。

为什么会这样? mysql表中支持许多不同的数据类型,导入器无法自行判断要使用哪种数据类型。 例如,如果CSV中的第一行是

  

你好,1

导入器可能选择CHAR(5)和INT,但下一行可能是

  

科伦坡,加勒

此行无法导入CHAR(5)或INT

答案 1 :(得分:0)

您已使用mysql-workbench标记了您的问题,即使您没有询问此工具。但是,让我告诉MySQL Workbench确实可以在这里提供帮助。在单击主屏幕上的连接磁贴时打开的SQL IDE中,您可以使用侧栏中的上下文菜单打开表数据导入向导。这将帮助您从文件导入CSV(或JSON)数据,并且还将为您创建目标表(如果您不选择现有的表)。