与node-mssql的主要连接
Main connection with node-mssql
我正在使用节点模块 "node-mssql" 连接 SQL 服务器。
我正在创建一个 bluebird promise,最后这个 promise 关闭了连接。我这样做是因为我不知道如何建立一个主连接,但我不认为 opening/closing 每个查询一个连接是个好主意。
function connection() {
let promise = sql.connect('...');
promise.catch(function (err) {
console.log('********** Error on connecting **********');
console.log(err);
console.log('---------- Error on connecting ----------');
})
.finally(function () {
sql.close();
});
return promise;
};
var query = connection().then(function() {
new sql.Request()
.input('foo', mssql.NVarChar, 'bar')
.query('...')
.then(function (out) {
//...
})
.catch(function (err) {
console.log('********** Error on query **********');
console.log(err);
console.log('---------- Error on query----------');
});
});
有什么方法可以连接主网吗?
嗯...我解决了这个添加标志和函数,在我的代码下面,我希望它有帮助,或者如果有更好的方法请评论。
var mssql = require('mssql');
var sql = {}
sql.connected = false;
sql.connect = function () {
let promise = mssql.connect(SQL.String);
promise.catch(function (err) {
// handling error
mssql.close();
sql.connected = false;
});
return promise;
};
sql.Request = function () {
return new Promise(function (resolve, reject) {
if (!sql.connected) {
sql.connect()
.then(function () {
sql.connected = true;
resolve(new mssql.Request());
});
} else {
resolve(new mssql.Request());
}
});};
我正在使用节点模块 "node-mssql" 连接 SQL 服务器。
我正在创建一个 bluebird promise,最后这个 promise 关闭了连接。我这样做是因为我不知道如何建立一个主连接,但我不认为 opening/closing 每个查询一个连接是个好主意。
function connection() {
let promise = sql.connect('...');
promise.catch(function (err) {
console.log('********** Error on connecting **********');
console.log(err);
console.log('---------- Error on connecting ----------');
})
.finally(function () {
sql.close();
});
return promise;
};
var query = connection().then(function() {
new sql.Request()
.input('foo', mssql.NVarChar, 'bar')
.query('...')
.then(function (out) {
//...
})
.catch(function (err) {
console.log('********** Error on query **********');
console.log(err);
console.log('---------- Error on query----------');
});
});
有什么方法可以连接主网吗?
嗯...我解决了这个添加标志和函数,在我的代码下面,我希望它有帮助,或者如果有更好的方法请评论。
var mssql = require('mssql');
var sql = {}
sql.connected = false;
sql.connect = function () {
let promise = mssql.connect(SQL.String);
promise.catch(function (err) {
// handling error
mssql.close();
sql.connected = false;
});
return promise;
};
sql.Request = function () {
return new Promise(function (resolve, reject) {
if (!sql.connected) {
sql.connect()
.then(function () {
sql.connected = true;
resolve(new mssql.Request());
});
} else {
resolve(new mssql.Request());
}
});};