关于node利用node mysql模块调取本地数据库数据,然后返回的数据为啥为空,但是回调里面有值?
var mysql = require('mysql');
function getData(params,table){
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '',
database : 'app'
});
console.log(1);
connection.connect();
console.log(2);
connection.query('select '+params+' from '+table, function(err, rows, fields) {
if (err) throw err;
console.log(3);
console.log(rows); //这个有值
return rows; //这个返回undefined
});
console.log(4);
connection.end();
console.log(5);
}
getData('admin_user_name','admin_user');
//console.log(getData('admin_user_name','admin_user'))
也试过使用全局变量保存rows但是依旧undefiend,并且调试的时候打印的顺序是是
1
2
4
5
3
这是怎么回事?该如何解决