gpt4 book ai didi

javascript - Knex 和 SQL 数据库的引号问题

转载 作者:行者123 更新时间:2023-12-03 00:46:59 26 4
gpt4 key购买 nike

我正在尝试使用 Knex 将查询保存到数据库中。但是,如果我尝试保存的此查询包含引号,则会出现错误。

以下是代码的示例:

db.query(`INSERT INTO test.searches VALUES ('TestUser', 'testqueryname', ''SELECT * FROM table WHERE team='rocket'')`, info, () =>{}

当然,在实际情况下,我不会发送硬编码值,而是将变量作为字符串发送。

尝试保存此内容会出现错误

error: syntax error at or near "rocket"

最佳答案

首先,您的代码似乎存在 JavaScript 语法错误,至少缺少右括号。

其次,knex 没有 .query() 方法(也许您直接使用数据库驱动程序?)。您可能应该使用 knex.raw(),即使上面的查询可以使用普通 knex 方法轻松编写。

如果您使用 knex.raw,您可以使用 ?? 替换进行引用,并使用 ? 进行值绑定(bind)。

如果您像问题中那样编写代码,那么使用 knex 根本没有任何优势,您应该直接使用数据库驱动程序。

关于javascript - Knex 和 SQL 数据库的引号问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53203444/

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