gpt4 book ai didi

mysql - 如何在 ExpressJS 的 mysql 中删除一行?

转载 作者:行者123 更新时间:2023-11-30 21:42:42 25 4
gpt4 key购买 nike

尝试使用 express 删除一行,但它不起作用。

代码

    router.get('/hoteles/Eliminar/:idHotel',(req,res) => {
var idHotel = req.params.idHotel
console.log(idHotel);
var sql = 'DELETE FROM hotel WHERE idHotel = ?;';

conn.query(sql,[idHotel],(err,result,field) => {
if(err){
res.send({
'code' : 400,
'faild' : 'error ocurred Eliminar'
});
}else{
console.log('deleted ' + result.affectedRows + ' rows');
res.redirect('/root/hoteles/1');
}
});
});

输出

:5
deleted 0 rows

需要注意的是之前在别人的数据库中查询输出是:

(node:10899) [DEP0096] DeprecationWarning: timers.unenroll() is deprecated. Please use clearTimeout instead.

返回的req.params.idHotel

:6 

所以我使用 split() 然后我使用 parseInt()

谢谢。

最佳答案

你的答案在下面

router.get('/hoteles/Eliminar/:idHotel', (req, res) => {
var idHotel = [];
idHotel.push(String(req.params.idHotel));
console.log(idHotel);
var sql = 'DELETE FROM hotel WHERE idHotel = ?';

conn.query(sql, idHotel, (err, result, field) => {
if (err) {
res.send({
'code': 400,
'faild': 'error ocurred Eliminar'
});
} else {
console.log('deleted ' + result.affectedRows + ' rows');
res.redirect('/root/hoteles/1');
}
});
});

不要在 nodejs 中使用分号。它默认使用分号(在 sql 语句的末尾);

link 引用更多关于 sql nodejs 的信息

关于mysql - 如何在 ExpressJS 的 mysql 中删除一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50849284/

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