我正在尝试在 node.js 中编写脚本来查询 MSSQL 数据库。我是 javascript 的新手,node.js 的新手,VSCode 的新手,但我知道一些关于 SQL 的事情。我有工作代码,但连接似乎永远不会关闭,而且我无法从函数中获取值。
所以,我有这段代码,是从 npm 的例子中得到的:
const sql = require('mssql');
var dbConfig = {
server:'theServer',
database:'theDB',
user:'un',
password:'pw',
port:1433
};
sql.connect(dbConfig).then(pool => {
// Query
return pool.request()
.query('select top 10 * from THE_TABLE')
}).then(result => {
console.log(result);
}).catch(err => {
// ... error checks
})
这有效,我可以看到控制台中记录了 10 个结果。但是,代码永远不会停止运行。如何关闭和停止连接?
我很想把结果保存到一个变量中,所以我把代码改成这样:
const sql = require('mssql');
var dbConfig = {
server:'theServer',
database:'theDB',
user:'un',
password:'pw',
port:1433
};
let theList;
sql.connect(dbConfig).then(pool => {
// Query
return pool.request()
.query('select top 10 * from THE_TABLE')
}).then(result => {
theList= result;
}).catch(err => {
// ... error checks
})
console.log(theList);
这会将“undefined”返回到 theList 的控制台,并且连接似乎永远不会结束,并且脚本永远不会关闭。
我如何获取查询结果并继续前进??
最佳答案
这对我有用。有一个 .close()
方法。
const DB = require("mssql")
const config = require("./config.json")
DB.connect(config)
.then((conn) =>
conn.query("SELECT * FROM table1")
.then((v) => console.log(v))
.then(() => conn.close())
)
关于javascript - 在 node.js 中使用 mssql 关闭 MSSQL 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45681727/