Javascript 带有Express和SQL Server数据库的NodeJS API
我有一个带有Express的NodeJSAPI。在我的视图中,我需要调用SQL Server函数,如以下示例所示Javascript 带有Express和SQL Server数据库的NodeJS API,javascript,node.js,sql-server,express,Javascript,Node.js,Sql Server,Express,我有一个带有Express的NodeJSAPI。在我的视图中,我需要调用SQL Server函数,如以下示例所示 const express = require('express'); const router = express.Router(); const { poolPromise } = require('../dbconfig'); router.use(express.json()); router.post('/addDesc', async(req, res) =>
const express = require('express');
const router = express.Router();
const { poolPromise } = require('../dbconfig');
router.use(express.json());
router.post('/addDesc', async(req, res) => {
try {
const
username= req.body.nomUsager,
descr = req.body.description ;
const pool = await poolPromise;
const result = await pool.request().query(`Select dbo.AddDescr('${nomUsager}', '${descr}')`);
console.log(result.recordset[0]);
return res.json({
// I want to return the value returned by me SQL Functions, but the previous console.log() returned {"": "The function value returned"}. Is it possible to return only the value like that : { "the function value returned" }
});
} catch (err) {
return res.json({
"Fail"
});
}
});
module.exports = router
它工作得很好,但是,如何只获取函数返回的结果,而不获取具有未命名属性的对象?(请参阅my console.log())
我不想使用别名,我所有的sql函数和存储过程都完成了我不完全确定我是否理解这个问题,但您可以使用以下方法获得字符串:
result.recordset[0][“”]代码>
使用带引号的方括号:[“”]
将帮助您获取值。但是,JavaScript对象是{name:value}
对,因此不能单独返回值