Javascript 尝试使用Node.JS将JSON插入MySQL

Javascript 尝试使用Node.JS将JSON插入MySQL,javascript,mysql,node.js,json,parsing,Javascript,Mysql,Node.js,Json,Parsing,使用Node.JS我有一个从API调用收到的JSON输出。我正在尝试将此JSON插入到MySQL中,但我一直收到错误消息: “错误:ER_PARSE_错误:SQL语法有错误;请查看与MySQL服务器版本对应的手册,以了解第1行“ANU”附近使用的正确语法” 为什么拒绝输入请求?我如何纠正 此外,我更愿意包含多个字段,如CountryName和CityName——我如何才能做到这一点 在node.JS中分析JSON文件时 console.log(typeof JSON)返回输出[object ob

使用Node.JS我有一个从API调用收到的JSON输出。我正在尝试将此JSON插入到MySQL中,但我一直收到错误消息:

“错误:ER_PARSE_错误:SQL语法有错误;请查看与MySQL服务器版本对应的手册,以了解第1行“
ANU
”附近使用的正确语法”

为什么拒绝输入请求?我如何纠正

此外,我更愿意包含多个字段,如CountryName和CityName——我如何才能做到这一点

在node.JS中分析JSON文件时
console.log(typeof JSON)
返回输出
[object object]

我认为这是造成上述错误的原因,因为它的格式不正确

Node.JS摘录:

//MySQL
let con = mysql.createConnection(config);
con.connect(function(err) {
  if (err) throw err;
  console.log("Connected to MySQL!");

  var sql = "INSERT INTO TEST1 (CountryName) VALUES ?";
  var values = obj.LocationsResponse.Country[1].CountryName;
      con.query(sql, values, function (err, result) {
      if (err) throw err;
      console.log("Number of records inserted: " + result.affectedRows);
});
});
JSON extract(我进行了清理以保持简短):


JSON与此错误无关

你刚刚把INSERT的语法搞错了

你有:

INSERT INTO TEST1 (CountryName) VALUES ?
你应该:

INSERT INTO TEST1 (CountryName) VALUES (?)
MySQL还支持另一种语法:

INSERT INTO TEST1 SET CountryName = ?

有关MySQL插入语法的更多信息,请阅读。

谢谢!我现在就读这篇文章。几个小时过得很好,哈哈。
INSERT INTO TEST1 SET CountryName = ?