Nodejs与Mysql数据库返回值

Posted

技术标签:

【中文标题】Nodejs与Mysql数据库返回值【英文标题】:Nodejs with Mysql Database Return value 【发布时间】:2014-06-04 04:13:35 【问题描述】:

我有以下代码。我对 nodejs &js 比较陌生

我想在 1.log 中获取值,但我没有定义。 只有2.log输出到日志中。

我读了nodeJS return value from callback 和 https://github.com/felixge/node-mysql 但是没有返回值的例子。

我不知道如何在 node-mysql 页面中的给定示例中使用 return 语句。

export.location_internal = 函数(请求,资源) var r = getExternalLocation(2); // 1. 日志 控制台.log(r); res.send(r); var getExternalLocation = 函数 (id) pool.getConnection(函数(错误,连接) if(err) 抛出错误; 变量响应 = ; connection.query("select * from external_geo_units where geo_unit_id = "+id, function(err, rows) if(err) 抛出错误; response.data=行; // 2. 日志 控制台日志(响应); 返回响应; ); 连接.释放(); ); ;

【问题讨论】:

【参考方案1】:

它是异步的,所以当它准备好时你必须传入一个回调来获取值。示例:

exports.location_internal = function(req, res, next) 
  getExternalLocation(2, function(err, rows) 
    if (err)
      return next(err);
    console.log(rows);
    res.send(rows);
  );
;

function getExternalLocation(id, cb) 
  pool.getConnection(function(err, conn) 
    if (err)
      return cb(err);

    conn.query("select * from external_geo_units where geo_unit_id = ?",
               [id],
               function(err, rows) 
      conn.release();
      cb(err, rows);
    );
  );

【讨论】:

以上是关于Nodejs与Mysql数据库返回值的主要内容,如果未能解决你的问题,请参考以下文章

JQuery Post到NodeJS返回MySQL值给出未定义?

NodeJS 与 MySQL - 返回空白数组

Nodejs学习笔记--- 与MySQL交互(felixge/node-mysql)

nodejs mysql 返回数据中带有rowdatapacket是怎么回事

用Nodejs+Express搭建web,nodejs路由和Ajax传数据并返回状态,nodejs+mysql通过ajax获取数据并写入数据库

我如何通过nodejs返回获取mysql json