ER_PARSE_ERROR:您的SQL语法有误-节点JS

时间:2018-12-06 20:33:23

标签: mysql node.js

嗨,我正在使用节点js处理mysql数据库。插入了许多数据,但此时查询卡住了,我不知道为什么。我尝试了mysql.escape()utf8.encode(),但仍然是相同的错误。

这是我的查询

                ms_connect.query("INSERT INTO `companies_jobs` VALUES (null, '"+mysql.escape(data[i].title)+"','"+mysql.escape(data[i].link)+"','"+mysql.escape(data[i].date)+"','"+mysql.escape(data[i].level)+"','"+mysql.escape(data[i].category)+"','"+mysql.escape(data[i].function)+"','"+mysql.escape(data[i].loc)+"','"+mysql.escape(data[i].timing)+"','"+mysql.escape(data[i].company)+"','"+JSON.stringify(time)+"','"+JSON.stringify(date)+"',"+1+")", function(err, row){
                    if(err){
                        console.log(data[i]);
                        throw err;
                    } else{
                        i++;
                        s();
                    }
                })

我正在尝试将此数据插入数据库:

[{
  category: 'Sales',
  company: '',
  date: 'Posted on 12/06/2018',
  function: '',
  level: 'Students',
  link: 'https://career5.successfactors.eu/career?career%5fns=job%5flisting&company=LiMySLive&navBarLevel=JOB%5fSEARCH&rcm%5fsite%5flocale=en%5fUS&career_job_req_id=13305&selected_lang=es_ES&jobAlertController_jobAlertId=&jobAlertController_jobAlertName=&_s.crb=fl08QG2oV1akJFW%2fWVQ4Ol50v%2bs%3d',
  loc: 'Chile (CL)',
  timing: 'full time',
  title: 'Alumno en Practica'
}]

但是由于某些原因,我收到此错误:

  

ER_PARSE_ERROR:您的SQL语法有错误;请查看与您的MySQL服务器版本相对应的手册,以获取在第1行的“ Alumno en Practica”,''https://career5.successfactors.eu/career?career%5fns=job%'附近使用的正确语法

这是表的结构:

enter image description here

1 个答案:

答案 0 :(得分:3)

看起来mysql.escape(data[i].title)已经在您的值周围加上了单引号,因此您可以通过自己添加将其加倍。