[Knex] Undefined binding(s) detected when compiling UPDATE

下图是详细的报错截图,我敢保证前端传递的数据一个不漏,但还是报我没有绑定对应的字段:

image

官方文档的使用案例基本上都是where 子句在 update 语句之前。但,select 语句的 where 子句既可以放在后面,也可以放在前面。

🙃错误的使用案例:

knex("users").update(reduceFileds(data, exclude)).where(whereClause());

🙂正确的使用案例:

knex("users").where(whereClause()).update(reduceFileds(data, exclude));

总结:平常我们在 SQL 里面写的语句跟 knex 在顺序上可能有些不同。以后一旦遇到了 update 语句使用 where 子句,就先写 where。

posted @ 2022-08-21 00:42  Himmelbleu  阅读(107)  评论(0编辑  收藏  举报