首页 文章

无法使用node-mssql连接到db

提问于
浏览
0

使用带有jasmine框架的webdriverio . 需要连接到数据库,我使用node-mssql来做到这一点 .

var sql = require('mssql');

sql.connect("mssql://username:password@localhost/database").then(function() {
    new sql.Request().query('select * from mytable').then(function(recordset) {
        console.dir(recordset);
    }).catch(function(err) {
        // ... query error checks 
    });
});

上面的代码给出了错误:“UnhandledPromiseRejectionWarning:未处理的promise拒绝(拒绝ID:1):ConnectionError:无法连接到undefined:1433 - connect ECONNREFUSED 127.0.0.1:1433(node:24585)DeprecationWarning:不推荐使用未处理的promise拒绝 . 将来,未处理的承诺拒绝将使用非零退出代码终止Node.js进程 . “

我尝试没有承诺,因为webdriverio中的代码是异步的,承诺可能无法正常工作:

var connection = sql.connect(config); //config has all the parameters
  var request = new sql.Request();
  request.query('select * from myTable');

错误是:“查询未定义”

我究竟做错了什么?

1 回答

  • 0

    您使用的是npm请求包还是npm请求承诺包?我使用promise版本遇到了类似的问题 . 您使用的是什么版本的节点?最新的稳定版本支持可用于处理异步代码的本机JavaScript Promises . 我将在早上使用本机承诺实现和请求包的一些示例代码更新此答案 . 还取决于您的异步代码块的位置将有助于确定答案..它是在茉莉花'它'块中还是在conf文件中或其他地方?

相关问题