zing-orm
Version:
75 lines • 5.59 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MssqlDriver = void 0;
class MssqlDriver {
constructor() {
this.type = "mssql";
this.dirver = require('tedious');
}
async getConnection(_options) {
return new Promise((resolve, reject) => {
// Create connection to
let extraOptions = !_options.extraOptions ? {} : _options.extraOptions;
var config = {
server: _options.host,
authentication: {
type: 'default',
options: {
userName: _options.user,
password: _options.password // update me
}
},
options: Object.assign({ port: Number(_options.port), database: _options.database }, extraOptions
// cryptoCredentialsDetails: {
// minVersion: 'TLSv1'
// },
// useColumnNames: false
// rowCollectionOnRequestCompletion: true
)
};
var connection = new this.dirver.Connection(config);
// Attempt to connect and execute queries if connection goes through
connection.on('connect', function (err) {
if (err) {
connection.close();
console.error("获取 mssql connection 失败!!!", err);
reject(`获取 mssql connection 失败!!!, 错误: ${err}`);
}
else {
console.log("获取 mssql connection 成功.");
resolve(connection);
}
});
connection.connect();
});
}
async closeConnection(_connection) {
return new Promise((resolve, reject) => {
try {
if (!!_connection) {
_connection.on('end', function (err) {
if (err) {
console.error("关闭 mssql connection 失败!!!", err);
reject(`关闭 mssql connection 失败!!!, 错误: ${err}`);
}
else {
console.log("关闭 mssql connection 成功.");
resolve("关闭 mssql connection 成功.");
}
});
_connection.close();
}
else {
console.log("关闭 mssql connection 失败, connection is undefined.");
resolve("关闭 mssql connection 失败, connection is undefined.");
}
}
catch (err) {
console.error(err);
throw Error(`mssql mssql connection 失败!!!, 错误: ${err}`);
}
});
}
}
exports.MssqlDriver = MssqlDriver;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTXNzcWxEcml2ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJNc3NxbERyaXZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFHQSxNQUFhLFdBQVc7SUFBeEI7UUFFYSxTQUFJLEdBQUcsT0FBTyxDQUFDO1FBRWYsV0FBTSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQXVFekMsQ0FBQztJQXJFRyxLQUFLLENBQUMsYUFBYSxDQUFDLFFBQXVCO1FBQ3ZDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDbkMsd0JBQXdCO1lBQ3hCLElBQUksWUFBWSxHQUFHLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsWUFBWSxDQUFDO1lBQ3ZFLElBQUksTUFBTSxHQUFHO2dCQUNULE1BQU0sRUFBRSxRQUFRLENBQUMsSUFBSTtnQkFDckIsY0FBYyxFQUFFO29CQUNaLElBQUksRUFBRSxTQUFTO29CQUNmLE9BQU8sRUFBRTt3QkFDTCxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUk7d0JBQ3ZCLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUSxDQUFDLFlBQVk7cUJBQzNDO2lCQUNKO2dCQUNELE9BQU8sa0JBQ0gsSUFBSSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQzNCLFFBQVEsRUFBRSxRQUFRLENBQUMsUUFBUSxJQUN4QixZQUFZO2dCQUNmLDhCQUE4QjtnQkFDOUIsMEJBQTBCO2dCQUMxQixLQUFLO2dCQUNMLHdCQUF3QjtnQkFDeEIseUNBQXlDO2lCQUM1QzthQUNKLENBQUE7WUFFRCxJQUFJLFVBQVUsR0FBRyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRXBELG9FQUFvRTtZQUNwRSxVQUFVLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxVQUFVLEdBQUc7Z0JBQ2xDLElBQUksR0FBRyxFQUFFO29CQUNMLFVBQVUsQ0FBQyxLQUFLLEVBQUUsQ0FBQztvQkFDbkIsT0FBTyxDQUFDLEtBQUssQ0FBQywyQkFBMkIsRUFBRSxHQUFHLENBQUMsQ0FBQztvQkFDaEQsTUFBTSxDQUFDLGtDQUFrQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO2lCQUNuRDtxQkFBTTtvQkFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLHlCQUF5QixDQUFDLENBQUM7b0JBQ3ZDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQztpQkFDdkI7WUFDTCxDQUFDLENBQUMsQ0FBQztZQUVILFVBQVUsQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUV6QixDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFRCxLQUFLLENBQUMsZUFBZSxDQUFDLFdBQWdCO1FBQ2xDLE9BQU8sSUFBSSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLEVBQUU7WUFDbkMsSUFBSTtnQkFDQSxJQUFJLENBQUMsQ0FBQyxXQUFXLEVBQUU7b0JBQ2YsV0FBVyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEVBQUUsVUFBVSxHQUFHO3dCQUMvQixJQUFJLEdBQUcsRUFBRTs0QkFDTCxPQUFPLENBQUMsS0FBSyxDQUFDLDJCQUEyQixFQUFFLEdBQUcsQ0FBQyxDQUFDOzRCQUNoRCxNQUFNLENBQUMsa0NBQWtDLEdBQUcsRUFBRSxDQUFDLENBQUM7eUJBQ25EOzZCQUFNOzRCQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMseUJBQXlCLENBQUMsQ0FBQzs0QkFDdkMsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBQUM7eUJBQ3RDO29CQUNMLENBQUMsQ0FBQyxDQUFDO29CQUVILFdBQVcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDdkI7cUJBQU07b0JBQ0gsT0FBTyxDQUFDLEdBQUcsQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO29CQUNoRSxPQUFPLENBQUMsa0RBQWtELENBQUMsQ0FBQztpQkFDL0Q7YUFDSjtZQUFDLE9BQU8sR0FBRyxFQUFFO2dCQUNWLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ25CLE1BQU0sS0FBSyxDQUFDLHFDQUFxQyxHQUFHLEVBQUUsQ0FBQyxDQUFBO2FBQzFEO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0NBQ0o7QUEzRUQsa0NBMkVDIn0=