nodejs中的多个mysql查询和回调

时间:2015-06-02 09:45:55

标签: mysql node.js asynchronous callback

我有类似的代码,但回调不起作用。所有查询都有效,console.log写入行ID。查询依赖

exports.order_taxometr = function (data, client, callback) {
    db.query(sql, function (err, rows) {
      db.query(sql, function (err, rows) {
         db.query(sql, function (err, rows) {
            db.query(sql, function (err, rows) {
                console.log(rows[0].id);
                res[order] = rows;
                res['result'] = "success";
                res['message'] = "ok";
                callback(res);
              })
         })
      })
    })
}

2 个答案:

答案 0 :(得分:0)

所有查询的结果都在同一个变量中,它们将覆盖最后一个变量

get "search/venues/show", to: "search/venue_searches#show", as: :venue_search

答案 1 :(得分:0)

db.query(sql, function (err, rows1) {
  db.query(sql, function (err, rows2) {
    db.query(sql, function (err, rows3) {
      db.query(sql, function (err, rows4) {
        var result = {};
        var res = {};
        var order = {};
        result["firstROW"] = rows1;
        result["secondROW"] = rows2;
        result["forthROW"] = rows3;
        result["fifthtROW"] = rows4;
        res[order] = result;
        res['result'] = "success";
        res['message'] = "ok";
        callback(res);
        db.close();
      })
    })
  })
});