Node.js 节点mssql在查询后挂起
我在运行节点脚本以从SQL Server检索数据时遇到问题。看起来我得到了结果,但是在查询运行之后没有代码被执行。以下是迄今为止我对代码的了解:Node.js 节点mssql在查询后挂起,node.js,node-mssql,Node.js,Node Mssql,我在运行节点脚本以从SQL Server检索数据时遇到问题。看起来我得到了结果,但是在查询运行之后没有代码被执行。以下是迄今为止我对代码的了解: var config = { user: 'blah', password: 'blah', server: 'blah', database: 'blah' }; sql.connect(config, err => { if(err) { console.log(err); }
var config = {
user: 'blah',
password: 'blah',
server: 'blah',
database: 'blah'
};
sql.connect(config, err => {
if(err) { console.log(err); }
var request = new sql.Request();
request.query('select * from products', function(err, data){
console.log(data.recordset);
ProcessData(data.recordset);
});
});
sql.on('error', err => {
console.log(err);
});
function ProcessData(results){
for(var i; i < results.length - 1; i++){
console.log(results[i].sku);
}
}
var配置={
用户:“废话”,
密码:“废话”,
服务器:'废话',
数据库:“废话”
};
sql.connect(配置,错误=>{
if(err){console.log(err);}
var request=new sql.request();
request.query('select*from products',函数(err,data){
console.log(data.recordset);
ProcessData(data.recordset);
});
});
sql.on('error',err=>{
控制台日志(err);
});
函数ProcessData(结果){
for(var i;i
现在,我在终端中看到console.log(data.recordset)的结果,但在终端中从未看到ProcessData函数的任何结果。是否有什么东西使我的代码无法正常运行?谢谢
韦德想出了办法。。你只需要关闭连接
sql.connect(config, err => {
if(err) { console.log(err); }
var request = new sql.Request();
request.query('select * from products', function(err, data){
console.log(data.recordset);
ProcessData(data.recordset);
sql.close() // just close the connection and it will exit !
});
});
我也被困在这个问题上了。类似的例子