【发布时间】:2019-03-05 09:45:36
【问题描述】:
我正在尝试编写一个函数来处理我对数据库执行的所有查询,但是,我正在努力寻找一种方法来动态地将参数添加到我的请求中。
所有 NPM 文档都提供了添加参数的非动态示例 (https://www.npmjs.com/package/mssql)。
示例 NPM 文档:
function runStoredProcedure() {
return pool2.then((pool) => {
pool.request() // or: new sql.Request(pool2)
.input('input_parameter', sql.Int, 10)
.output('output_parameter', sql.VarChar(50))
.execute('procedure_name', (err, result) => {
// ... error checks
console.dir(result)
})
});
}
我的实现是这样的
// promise style:
const pool2 = new sql.ConnectionPool(config, err => {
// ... error checks
});
pool2.on('error', err => {
// ... error handler
})
function runStoredProcedure(res, proc, sqlParams) {
return pool2.then((pool) => {
pool.request() // or: new sql.Request(pool2)
.input('input_parameter', sql.Int, 10) //
.execute(proc, (err, recordset) => {
// ... error checks
res.json(recordset[0]);
})
});
}
理想情况下,我想为我的参数声明pool.request(),然后声明foreach。
我认为发布这个问题会很有用,因为 mssql 包的实际用例会考虑动态添加参数,尽管文档中给出了示例。
【问题讨论】:
标签: node.js sql-server database