问题标签 [knex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
25 浏览

node.js - 从纯 SQL 查询转换为 knex.js

我们在 node.js 中使用 knex.js 进行数据库查询。我有一个可以正常工作的普通 sql 查询。我需要将这个普通的 SQL 查询转换为 knex.js。我是 knex.js 的新成员。我尝试了不同的方法让它工作,但它没有工作。这是普通的sql查询:

我只需要 knex 格式的这个查询。提前致谢

0 投票
0 回答
16 浏览

knex.js - Knex.js Postgres 计数相交结果

我有一个 knex.js 查询,如下所示:

查询运行并返回正确的结果。我需要的是在同一个查询中计算这些结果。我尝试.count()在最后追加,但它会引发错误。

0 投票
0 回答
24 浏览

webpack - node-polyfill-webpack-plugin 在 webpack.config.js 中无法识别

我正在尝试将 knex 用于电子应用程序中的 sqlite 本地存储,并且由于 knex 使用了一些在 webpack v5 上存在的 polyfll 组件,因此收到了“重大更改”消息。听说可以使用 node-polyfill-webpack-plugin 把 polyfill 放回去。对于这个项目,我在根目录下创建了一个“webpack.config.js”,并在里面放了以下内容:

这是我的 package.json:

但是,当我运行“npm start”时,我仍然会收到所有 webpack 重大更改消息。

任何帮助将非常感激。直到我尝试使用任何类型的本地存储(例如 sqlite 或 NEDB)并在 Stack Overflow 上进行了广泛的搜索并尝试了其中一些建议的方法(实际上是 node-polyfill-webpack-插件来自阅读这个网站)但我仍然无法让它工作。

0 投票
0 回答
31 浏览

javascript - 向表中插入数据时,Knex 和 Objection.JS 始终处于挂起状态

我有一个 Express API,用于使用 Knex 和 ObjectionJS Orm 创建数据订单。当我尝试调用时,API 处于挂起状态,没有任何错误

API 待定

所以我尝试在我的其他计算机上运行它,然后它运行良好。我不知道发生了什么。数据库版本相同

我的环境:

包.json:

复制代码:

===[已编辑]===
我从 mysql 数据库获取日志:

0 投票
1 回答
10 浏览

postgresql - Heroku Postgres 未与 Knex 连接

我正在构建一个简单的后端服务器,我之前使用 heroku 部署了它。除了部署服务器,我还创建了一个包含所有我需要的表的 heroku postgres 数据库。当我尝试使用 knex 将数据库连接到服务器时出现问题;即使它在本地端口中运行时可以工作,但如果我使用我的 heroku postgres 数据库,我在尝试注册时会在前端获取错误。在这里,我分享了我的服务器代码以及 package.json 和 heroku 日志。希望提供的信息是足够的,并且事先,我非常感谢我能得到的任何帮助。

0 投票
0 回答
13 浏览

database - 删除表时,Knex 迁移不起作用

我有以下在数据库中创建表的迁移文件,该文件名为20211215154722_assist_tracking.js

我有另一个将数据填充到上面创建的表中的迁移,此文件名为20220120190740_ttp-balances.js  :

据我所知,当我执行以下命令时:knex migrate:latest所有迁移都是按顺序完成的(按创建时间顺序)。正如我们所看到的,第一个文件应该首先运行,然后是第二个文件。问题如下:

当我删除表(使用knex migrate:down 20211215154722_assist_tracking.js),运行表迁移knex migrate:up 20211215154722_assist_tracking.js(基本上再次构建表),然后尝试使用填充数据knex migrate:up 20220120190740_ttp-balances.js时,它不起作用。但是,当我使用 删除数据knex migrate:down 20220120190740_ttp-balances.js,然后使用 再次填充knex migrate:up 20220120190740_ttp-balances.js,而不删除表格时,效果很好。似乎删除了表,打断了流程,即使重新创建了表,以后也不会填充数据。为什么会发生这种情况?

0 投票
0 回答
12 浏览

node.js - 使用带值的 knex WITH 语句

将 Knex 与 postgresql 数据库一起使用。我正在尝试构建一个类似这样的查询:

我正在尝试像这样进行 WITH 调用:

inc 是我从另一个调用构建的字符串,如下所示:(some_id1),(some_id2), ect

更新 knex 后,它消除了错误,但仍然给出了错误的 sql。上面的 WITH 调用给出了以下内容。

包含(form_id)作为(值(1083))选择*

除了 raw 之外,似乎没有其他方法可以在 WITH 中使用带有 knex 的 VALUES。

0 投票
0 回答
11 浏览

javascript - knex 迁移 - 'ER_INVALID_DEFAULT:'timestamp' 的默认值无效

我有一个 knex chema 迁移来创建一个表,其中一行 -

我收到一个错误ER_INVALID_DEFAULT: Invalid default value for 'timestamp'

我试图给出默认值 null 并删除 notNullable() 或默认值 CURRENT_TIMESTAMP 但似乎没有任何效果(也许我的语法错误?)

我会很感激任何帮助!

0 投票
0 回答
9 浏览

javascript - 在没有 npm 的情况下使用 knexjs

我正在探索 JS 生态系统中的库,以使用另一种格式的所需信息构建 SQL 查询(DDL 和 DML)。我发现 KnexJS 对不同的 SQL 方言具有全面的支持,但我发现的所有示例都是从使用 npm 将其作为依赖项安装开始的。

当前的项目设置不是 npm(实际上,没有任何类型的包管理器),我现在不想介绍 npm。此外,仅添加 knex 就会带来 22 个其他软件包。是否有任何可用于我的用例的无依赖/缩小二进制文件?我搜索了 GitHub 存储库和发布页面,看看他们是否发布了此类内容,但找不到任何内容。

PS:我的用例是构建查询并将它们复制到剪贴板,用户可以以任何他们想要的方式使用它们。

0 投票
2 回答
21 浏览

sql - 如何使用 CASE WHEN 与书架聚合

我正在使用 PostgreSQL 和 bookshelf 并尝试运行一个简单的 SQL 查询,以便在单个查询中获得多个计数。此查询如下所示:

在书架CASE的函数中做语句似乎是不可能的。sum()我试过了:

这将返回以下查询:

由于 ) 后的引号,这不起作用sum("

有谁知道如何在不使用原始查询的情况下完成这项工作?