gpt4 book ai didi

node.js - Nodejs SQLite3 中的通配符

转载 作者:太空宇宙 更新时间:2023-11-04 03:14:08 25 4
gpt4 key购买 nike

如何在 sqlite3 的 Nodejs 版本中对参数使用通配符?代码:

let db = new sqlite.Database(...)
const param = 'x'
db.all('select * from mytable where name like "%?%"', [param], (err, rows) => {
...

这会导致

SQLITE_RANGE: column index out of range

有人建议将通配符添加到查询字符串中,如下所示:

const param = '%' + 'x' + '%'

但这似乎会导致字面搜索“%x%”之类的名称,而不是使用通配符。我知道我尝试运行的查询是正确的,因为它返回 sqlite3 cli 中的预期行。我怎样才能在JavaScript中实现同样的事情?

最佳答案

您需要在参数中包含 %% 并删除双引号:

const search = 'x';
const param = '%' + search + '%';
db.all('select * from mytable where name like ?', [param], (err, rows) => {

关于node.js - Nodejs SQLite3 中的通配符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59226145/

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