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交互(felixge/node-mysql)
nodejs mysql 返回数据中带有rowdatapacket是怎么回事
用Nodejs+Express搭建web,nodejs路由和Ajax传数据并返回状态,nodejs+mysql通过ajax获取数据并写入数据库