MySQL加载数据Infile

问题描述:

我想导入CSV文件到MySQL数据库,但我得到一个错误。MySQL加载数据Infile

这是我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:\用户\特拉瓦霍\文件\的Visual Studio 2013 \项目\禅 五金\演示”

我不不知道我的cmd语法的哪一部分是错误的。 C:

+1

结果命令应该如下所示: “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'“ –

,当你使用的是有空间的地址,必须'

“LOAD DATA INFILE前和这样的地址后,使用单引号()”:\用户\特拉瓦霍\文件\的Visual Studio 2013 \项目\禅五金\演示\ Tarjetas德Video.csv 'INTO TABLE zen_hardware.products TERMINATED田野',” LINES TERMINATED BY '\ 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 Syntax MySQL的手册。

+1

谢谢你的工作:D –