gpt4 book ai didi

node.js - 如何删除 ":",对于我在 SQL-Server 中查询的 FindOne?

转载 作者:行者123 更新时间:2023-12-03 22:35:51 29 4
gpt4 key购买 nike

好的,我只想从我的数据库中获取一个对象,所以我使用了 sequelize,但是在查询时它给我带来了“:80810”,所以它在数据库中向我发送了一个错误:“转换 nvarchar 值时转换失败': 80810' 到数据类型 int。",因为我要查询的字段是 INT 并且作为请求,我发送冒号":",它已经更改为 nvarchar,但我不知道如何删除 Node para 中的 req.params.id_alquiler 中的冒号 (:),当它在 SQL-SERVER 中执行时不会将其逐字记录到脚本中。

router.get('/rt:id_alquiler', exports.findOne = (req, res) => {
const id_alquiler = req.params.id_alquiler;
Rent.findByPk(id_alquiler)
.then(data => {
res.json(data);
})
.catch(err => {
res.status(500).send({
message: 'Error', err
});
});
})

SQL-SERVER 带来了什么
SELECT [id_alquiler]
,[nombre_periodo]
,[nombre_tipo_exhibidor]
,[nombre_estado_alquiler]
,[marca]
,[nombre_sucursal]
,[fecha_ingreso_alquiler]
FROM [View_RENTS_PDTs] AS [View_RENTS_PDT]
WHERE [View_RENTS_PDT].[id_alquiler] = N':80810';

但是如果我去掉冒号:in (N'80810 ';),那么如果你把对象带给我。那么你如何在数据库中运行它,它向我发送错误 500,但它仅针对包含在 sequelize 查询中的冒号“:”,你知道如何删除它们或者我如何解决它们数据库端?

提前感谢帮助。

最佳答案

您可能需要替换 ':' 并将其解析为数值然后传递,如下所示:

const id_alquiler = parseInt(req.params.id_alquiler.replace(':', ''));

关于node.js - 如何删除 ":",对于我在 SQL-Server 中查询的 FindOne?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60816971/

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