mysql - 如何在带有 Express 框架的 mysql 中使用 AND 运算符

标签 mysql node.js express

我想在使用 mysql 的 express 框架中使用 AND 运算符实现查询。

mysql 查询:从 question_id=1 AND answer="apple"AND appkey="1122"的问题中选择 *;

我想用mysql在express js中实现上面的查询。我尝试了以下查询。

req.getConnection(function(err,connection){


    var data = {

        qid    : input.questionid,
        ansvalue : input.answervalue,
        appid   : input.appkey,


    };
    console.log(data);

    var query = connection.query('SELECT * FROM request_auth WHERE question_id = ?',[qid]'AND answer_description = ?',[ansvalue]'AND app_key = ?',[appid],function(err,rows)
    {

        if(query=='')
            console.log("Error Selecting : %s ",err );

        res.render('edit_customer',{page_title:"Edit Customers - Node.js",data:rows});


     });

但它抛出错误 qid is not defined。请给我解决方案。谢谢。

最佳答案

您必须将实际查询(使用占位符)和占位符参数分开(参见第三个示例 here):

connection.query('SELECT * FROM request_auth WHERE question_id = ? AND answer_description = ? AND app_key = ?', [qid, ansvalue, appid], ...)

此外,请确保在查询完成时调用 connection.release()(更多信息 here)。

关于mysql - 如何在带有 Express 框架的 mysql 中使用 AND 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45280965/

相关文章:

node.js - 在 Loopback.js 中向模型添加远程函数

javascript - 通过 nodejs 和 express 重定向到自定义 url

node.js - 如何在sequelize中使用group by子句获取嵌套对象

node.js - 模式生成器无法确定 DTO 中自定义对象的 GraphQL 输出类型

mysql - 条件 SQL ORDER BY

mysql - 2个日期之间的时间(分钟)差异MySQL

node.js - 防止脚本模板的 Jade 插值

node.js - 类中的静态变量在 app.listen 的回调中未定义

python - 在 Flask 网络应用程序中维护 MySQL 与 peewee 的连接

mysql - 将 CSV 文件转换为 MySQL 数据库架构