我在node.js中使用util模块来格式化字符串。但是当我想运行像SQL一样的SQL查询时,我发现了一个问题。
select * from something LIMIT 5 OFFSET 0;
所以我要做的是,我创建了一个queryString,然后格式化queryString,最后通过服务器应用程序执行查询。这是nodejs中的代码:
queryString = "select * from something LIMIT '%d' OFFSET '%d'";
query = util.format(queryString, 5, 0);
res = db.executeQuery(query);
我也尝试了%i和%s,带引号但没有引号,但对我没什么用。 这是日志:
Error: ER_PARSE_ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%i OFFSET %i' at line 1
我确信我在这里遗漏了一些东西。提前致谢
答案 0 :(得分:0)
假设您使用的是mysql模块
还有其他方法:
var limit = 5;
var offset = 0;
var qs = `select * from something LIMIT ${limit} OFFSET ${offset}`;
或
connection.query('select * from something LIMIT ? OFFSET ?', [limit, offset], function (error, results, fields) {
...
});
或
var sql = mysql.format('select * from something LIMIT ? OFFSET ?', [limit, offset]);