【发布时间】:2019-07-05 15:56:08
【问题描述】:
我在 sql 查询中遇到错误。我得到了错误:代码:'ER_PARSE_ERROR', 错误号:1064。
我尝试将它直接复制并粘贴到数据库中,它运行良好,但是当我在我的 nodejs 服务器上运行它时,我得到了错误。查询是:
SELECT ER.id_entidad as companyid, E.nombre as name, ER.posicion as position, E.url_imagen as url,ER.created
FROM
entidad_red ER, cajero C, red R, entidad E
WHERE E.id_red = R.id_red AND C.id_red = E.id_red AND E.id_entidad = ER.id_entidad AND C.Serial = 'id'
而 sqlMessage 是:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在 \'SELECT ER.id_entidad as companyid, E.nombre as name, ER.posicion as position, \' at line 附近使用正确的语法 1'。
感谢您的帮助
这就是我执行查询的方式:
const dbConnection = mysql.createConnection(config);
app.get('/kioskcompanies', middleware.checkToken, function(req, res){
var serial = req.query.kioskid;
var sql = "SELECT ER.id_entidad as companyid, E.nombre as name, ER.posicion as position, E.url_imagen as url,ER.created " +
"FROM entidad_red ER, cajero C, red R, entidad E " +
"WHERE " +
"E.id_red = R.id_red " +
"AND C.id_red = E.id_red " +
"AND E.id_entidad = ER.id_entidad " +
"AND C.Serial = '" + serial + "'";
console.log(sql)
dbConnection.query(sql, (err, result) => {
if(err){
console.log(err);
res.status(200).json({
status:'error',
code:"1",
msg:'Error consultando la BD',
})
}
else if(result.length === 0){
res.status(200).json({
status:'error',
code:"3",
msg:'Entidad de recaudo no existe.',
})
}
else{
res.status(200).json({
status:'error',
code:'0',
companies:result,
msg:'Consulta correcta'
})
}
})
})
【问题讨论】:
-
这个功能和我很多其他的差不多,基本上只是查询的变化。虽然其他的工作完美,但这个有这个问题。
标签: javascript mysql sql node.js node-mysql