gpt4 book ai didi

javascript - 由于数字周围的引号,node.js mysql 查询无法运行

转载 作者:行者123 更新时间:2023-11-29 05:14:00 25 4
gpt4 key购买 nike

我有这个用 node.js mysql 编写的 mysql 查询,并重新确定要在 HTTP GET 中执行。 https://github.com/felixge/node-mysql

var api_get_func = function (app, url_path) {
function respond(req, res, next) {
var id= req.query.id;
var limit = req.query.limit;

var query_str =
"SELECT table.sw_type, " +
"FROM users " +
"WHERE (id = ?) " +
"LIMIT ?"; //limit

var var_arr = [id, limit];

var query = connection.query(query_str, var_arr, function (err, rows, fields) {}
//SQL query ...
return next();
}

app.get(url_path, respond);
}

HTTP GET URL 是 http://127.0.0.1/read_sw?id=51&limit=1

报告的错误是查询格式不正确。实际查询看起来像这样;

SELECT table.sw_type, 
FROM users
WHERE (id = 51)
LIMIT '1'

我认为问题出在 LIMIT '1'。我认为解决方案是使查询看起来像这样;

SELECT table.sw_type, 
FROM users
WHERE (id = 51)
LIMIT 1

如何修改node.js代码?

最佳答案

这不是关于mysql...

req.query 中的任何内容都是字符串:

怎么样

var var_arr = [id, parseInt(limit)];

关于javascript - 由于数字周围的引号,node.js mysql 查询无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35621601/

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