MySQL加载数据Infile

我想将CSV文件导入MySQL数据库但我收到错误。

这是我的LOAD DATA INFILE方法:

 public int Import(string path) { try { string cmd = "LOAD DATA INFILE " + path + " INTO TABLE zen_hardware.products FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'"; int a = MySqlHelper.ExecuteNonQuery(conn.Connect(),cmd); return a; } catch { return -1; } } 

当我运行代码时,我的字符串cmd得到这个:

 "LOAD DATA INFILE c:\\users\\trabajo\\documents\\visual studio 2013\\Projects\\Zen Hardware\\Presentation\\Tarjetas de Video.csv INTO TABLE zen_hardware.products FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'" 

我得到的错误是这样的:

您的SQL语法有错误; 查看与您的MySQL服务器版本对应的手册,以便在’c:\ users \ trabajo \ documents \ visual studio 2013 \ Projects \ Zen Hardware \ Presentation’附近使用正确的语法

我不知道我的cmd语法的哪个部分是错误的。

当您使用具有空格的地址时,必须在地址之前和之后使用单引号(’),如下所示:

“LOAD DATA INFILE”c:\ users \ trabajo \ documents \ visual studio 2013 \ Projects \ Zen Hardware \ Presentation \ Tarjetas de Video.csv’INTO TABLE zen_hardware.products FIELDS TERMINATED BY’,’LINES TEDINATED”\ n’“

 public int Import(string path) { try { string cmd = "LOAD DATA INFILE '" + path + "' INTO TABLE zen_hardware.products FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'"; int a = MySqlHelper.ExecuteNonQuery(conn.Connect(),cmd); return a; } catch { return -1; } } 

请参阅名为LOAD DATA INFILE语法的MySQL手册页。