gpt4 book ai didi

node.js - Nodejs mssql全局连接

转载 作者:搜寻专家 更新时间:2023-11-01 00:50:31 25 4
gpt4 key购买 nike

我使用 nodejs 连接到 SQL Server。但是我未能创建在所有查询之间共享的全局连接。在文档中,查询都包含在连接回调函数中,这意味着每次进行查询时,我都必须建立连接。

有没有办法让单个连接保持事件状态,以便我可以与所有 Controller 共享它?我用 mongodb 完成了它,不确定 SQL Server 是如何做到这一点的。

我做了这样的事情

connection.js:

const config = require('./config')
const sql = require('mssql')
const pool = sql.ConnectionPool(config).connect(function(err){
if(err) throw err;
console.log("connected");
});
module.exports = {
sql, pool
}

server.js:

const conn = require('./connection.js')
const requst = new conn.sql.Request(conn.pool)
request.query('select * from table', function (err, recordset){
if(err) console.log(err);
console.log(recordset);
});

因为连接被关闭而失败。

请分享您的一些见解,谢谢

最佳答案

我在我的一个项目中使用了 MSSQL,为了在全局范围内运行它,这就是我所做的。

server.js:

const sql = require('mssql');
const config = require('./config');
sql.connect(config, (err) => {
if (err) return console.error(err);
console.log("SQL DATABASE CONNECTED");
});

一些 Controller 文件:

const sql = require('mssql');
const request = new sql.Request();
request.multiple = true;

request.query('select * from table') => {
if(err){
return console.error(err);
}
return res.send(recordset)
});

希望这对您有所帮助。

关于node.js - Nodejs mssql全局连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52434352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com