Nodejs基于URL中的参数更新sqldb
有人能帮我解决这个问题吗。。我期望发生的是,当我点击这个URL时,我希望它用URL中传递的用户名更新DB表 示例:一个用户转到/update/michael,然后我希望它将姓氏更新为Bloggs,其中用户名是michaelNodejs基于URL中的参数更新sqldb,sql,node.js,api,parameters,pug,Sql,Node.js,Api,Parameters,Pug,有人能帮我解决这个问题吗。。我期望发生的是,当我点击这个URL时,我希望它用URL中传递的用户名更新DB表 示例:一个用户转到/update/michael,然后我希望它将姓氏更新为Bloggs,其中用户名是michael app.get("/update/:user_name", function(req , res){ var user_name = req.params.name; sql.connect(config, function() {
app.get("/update/:user_name", function(req , res){
var user_name = req.params.name;
sql.connect(config, function() {
const request = new sql.Request();
request.query("UPDATE table SET surname = 'Bloggs' WHERE user_name= + 'req.params.name'", (err, recordset) => {
res.end(JSON.stringify(recordset));
});
});
});
我更新了代码,请尝试一下,如果不起作用,请在评论中告诉我
app.get("/update/:user_name", function(req , res){
var user_name = req.params.user_name;
sql.connect(config, function() {
const request = new sql.Request();
request.query("UPDATE table SET surname = 'Bloggs' WHERE user_name= '"+user_name+"'", (err, recordset) => {
res.end(JSON.stringify(recordset));
});
});
});
使用Patch方法将user_name作为主体的一部分,而不是get@dustypawsvar user_name=req.params.user_name;这是正确的方法。没有仍然没有快乐。。100%正常工作。。请您解释一下为什么在更新之后它会工作好吗?where子句=>where user_name=+'req.params.name'和更新后的查询is=>where user_name='“+user_name+”,您的查询格式是错误的。您必须使用局部变量user_name