【发布时间】:2021-08-29 02:03:24
【问题描述】:
如何在 node-mysql 中转义 MySQL LIKE 语句?
类似的东西
"SELECT * FROM card WHERE name LIKE '%" + connection.escape(req.body.search) + "%'"
结果
'SELECT * FROM card WHERE name LIKE \'%\'hello\'%\''
这是一个语法错误。如果我使用
的替代语法connection.query("SELECT * FROM card WHERE name LIKE '%?%'", req.body.search, function () {});
导致类似的语法错误。我也试过了
connection.query("SELECT * FROM card WHERE name LIKE ?", '%' + req.body.search + '%', function () {});
最后只是转义了“%”符号。
【问题讨论】:
-
第三个例子是正确的,你看到的确切问题是什么?请注意,如果您要搜索字面上包含百分号的字符串,即trickier。
标签: javascript mysql node.js node-mysql