在nodejs中我们怎么使用.then来返回结果集呢
1、nodejs下安装mysql模块
npm install mysql
关于nodejs下mysql模块的安装,可以参考
https://www.cnblogs.com/shenlonghun/p/6114157.html
2、这里是我们Mysql.js的配置以及函数
//引入数据库
var mysql=require('mysql');
//实现127.0.0.1本地链接
var DATABASE = "test";
var table='test'
var connection = mysql.createConnection({
host:'127.0.0.1',
user:'root',
password:'root',
port:'3306',
database: DATABASE
});
//修改数据
function updateMysqlToken(Id,Name,Path) {
console.info('select Name====' + Name);
console.info('select Path====' + Path);
var Name = Name;
var Path = Path;
//主要是这里对Promise的使用,只有Promise才能使用.then
return new Promise(function (resolve,reject){
//定义我们的sql
var updateSql = 'UPDATE ' + table +' set Name = ?, Path = ?,
where Id = ? ';
//这里对应sql的字段
var updateParams = [Name,Path,Id];
//nodejs的执行
connection.query(updateSql,updateParams, function(err, rows, fields ) {
if (err){
reject(err)
}
// console.log( `The solution is: ${rows.length } ` );
console.info(` the getRowByPkOne sql ${updateSql}`)
if( !rows || rows.length == 0 )
resolve(null)
else
resolve(rows[0])
})
})
}
3、下面编写我们的.then的使用,res.send返回的是一个JSON格式的数据
//引入js,这里是对数据库的连接配置
var Mysql = require('Mysql.js');
Mysql.updateMysql(Name,Path).then(
//updateMysql修改这里返回的值是个object对象,所以我们需要对其进行JSON解析
function(message) {
console.info('message===' + JSON.stringify(message));
}
)
//将结果集返回给前端
res.send(result);
}