嗨,我正在使用节点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%'附近使用的正确语法
这是表的结构:
答案 0 :(得分:3)
看起来mysql.escape(data[i].title)
已经在您的值周围加上了单引号,因此您可以通过自己添加将其加倍。