在NodeJS

时间:2015-11-14 11:51:14

标签: mysql node.js express prepared-statement

我在Node

中使用'mysql'库

这是我使用的而不是准备好的声明,并且工作得很好:

 connection.query("update table set col1=? where col2=1",[val1],function(err,rows){
        //connection.release();
        if(!err) {
          //further code
          }
        });

然而,这不适用于2个unkowns:

    connection.query("update table set col1=? where col2=?",[val1],[val2],function(err,rows){
        //connection.release();
        if(!err) {
          //further code
          }
        });

错误消息显示“未定义不是函数”。我做错了什么?

1 个答案:

答案 0 :(得分:8)

您需要在单个数组中定义值,如下所示:

connection.query("update table set col1=? where col2=?",[val1,val2],function(err,rows){
    //connection.release();
    if(!err) {
      //further code
      }
    });

可以在此处轻松找到所有必要的功能:https://github.com/felixge/node-mysql/#preparing-queries