Я пытаюсь написать функцию, которая заботится обо всех моих запросах, которые я выполняю к базе данных, однако я изо всех сил пытаюсь найти способ динамически добавлять параметры в мой запрос.
Все 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 будет динамически добавляться параметр,несмотря на примеры, приведенные в документации.