将文本文件插入MySQL表


Inserting text file into MySQL table

这就是文本文件的样子。。。

Adad,s,585769,M,1f1,1Ig2,S198349057,,"AU9",",AVI1RCBTT1O1D5F,"Bic,Nenja,472080,M,2D,22,S22239052341924,"B016",",Voiol Proam Level 2,ADA2OJ2OBA,"

这就是我的代码。。

$result = mysql_query("LOAD DATA LOCAL INFILE '$ptmpName' REPLACE INTO TABLE 'students' FIELDS TERMINATED BY ',' ENCLOSED BY ' ' ESCAPED BY '''' LINES TERMINATED BY ''n'")or die ('Error: '.mysql_error ());

}

我收到错误:"SQL语法;请查看与MySQL服务器版本相对应的手册,在第1行的'students'FIELDS TERMINATED BY'、'ENCLOSED BY'ESCAPED BY''''LINES TERMINAN'附近使用正确的语法"

此代码很危险。你允许用户在你的服务器上任意位置乱写他们选择的文件。

您的SQL问题就在这里:

[...snip...] REPLACE INTO TABLE 'students' FIELDS [...snip...]
                                ^--------^---

引用这样的字段/表名称会将其转换为字符串,而不是字段/表名。要么完全删除引号(学生不是保留词,要么使用反引号:

... `students` ...