问题标签 [knexjs]

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 投票
1 回答
78 浏览

javascript - KnexJS 选择当年的所有记录

我只想能够选择本年度的所有记录,例如,我们在 2020 年,选择 created_at year 大于 2020 的所有记录

dayjs用来获取当前年份。我如何将行创建年份与当前年份进行比较knexjs

0 投票
1 回答
823 浏览

node.js - 有没有办法在 knex.js PostgreSQL 上使用“监听”?


我在 PostgreSQL 数据库中有一个名为“posts”的表。

所以我想做的是观看帖子表并在插入任何数据时获得通知。

所以我创建了这个 notify_changes_of_posts_Table 函数像这样:

我还创建了事件触发器,如下所示:

我的服务器像这样连接到数据库:

请注意,服务器 Nodejs 使用 knex.js 工具连接到数据库。

所以为了获得通知,我需要使用“ LISTEN ”,但我不知道如何实现,我检查了 knex.js 的官方文档,找不到与该主题相关的任何信息。

所以伙计们,我在这里完成这项工作感到困惑,所以如果我错了,如果有人可以在这里帮助我提供代码或建议,因为我现在非常困惑。
提前谢谢你们<3

0 投票
3 回答
2682 浏览

postgresql - Knex 和 PostgreSQL:如何删除唯一索引?

我有一个使用 knex 进行迁移的应用程序。早些时候有人使用knex.raw这样的方法在一列上创建了唯一索引:

使用 psql 打印出数据库时,我得到以下信息:

现在我想删除唯一约束,但我不确定如何。我读过我可以这样做:

但是这样做会knex.raw产生这个错误:

我也尝试过像这样使用dropUnique

这给出了以下错误:

版本

Knex CLI 版本:0.20.15 / Knex 本地版本:0.20.15

有人可以帮我/把我推向正确的方向吗?

0 投票
1 回答
1438 浏览

mysql - knex.js:orWhere 后跟多个 where 的组合

我正在用 knex.js 编写查询,但我被 orWhere 卡住了。

我需要这样的查询:

但由于某种原因,这就是我得到的:

or请注意,我想要两个 'and来代替第一个or

这是代码:

将不胜感激任何帮助

0 投票
1 回答
378 浏览

node.js - 我在 knex js 中的更新功能不起作用

我有一张表 -available_trucks我想在其中更新列 - available_date。我计划每天午夜更新这个可用日期,但现在出于测试目的,我尝试使用 nodejs 中的这个库每隔一分钟更新一次

https://www.npmjs.com/package/node-schedule

我也使用 knex js 作为 sql builder。

我的代码

服务器 JS(主文件)

卡车工作

因此,出于测试目的,我在这里输入硬编码的日期值,其中truck_number是 228。我想提一下,我检查过并且我的available_trucks- 表中的数据存在,所以在这里我尝试更新表中的现有列。但是在再次执行脚本一分钟后,表中的列没有更新。此外,当我尝试从某个表中获取数据时,一切都运行良好。例如

我的 knex 配置 KNEX JS

KNEX 文件 JS

0 投票
1 回答
33 浏览

postgresql - 使用 postgreSQL 更新每一行中的特定列

我有一张桌子可用的卡车。我需要更新每一行中的 available_date 列。我对数据库世界很陌生。所以我不知道该怎么做。我在pg admin中使用以前的knexjs作为带有db的sql builder,因为我对sql知之甚少,但是我无法用knexjs解决我的问题,我无法更新每一行。

我发布了这个问题

如何使用 knex.js 更新表中的每一行?

但没有人帮助我,我通过谷歌搜索但没有成功。现在最后我必须用纯 postgreSql 以某种方式解决这个问题。

0 投票
1 回答
597 浏览

node.js - Knex.js 忽略了外键约束

我正在尝试将 Knex.js 与 express 和 Node.js 一起设置。

我将 SQLite3 用于 Knex.js。

目前我遇到的问题是 Knex 使用表正确创建了外键,但在插入时只是忽略了它们(在外部数据库浏览器中,我可以看到外键已设置,并且我无法添加任何不存在的外键键)。但我希望我不能用 knex 插入元组,不满足外键约束。

以下是创建表的方法:

这里临时添加测试数据。

0 投票
0 回答
51 浏览

node.js - 有没有更简单的方法可以与模型中的“复合键”建立关系?

我的代码..

阿多尼斯V4

使用下面的代码,我可以准确地生成我想要的输出,但我认为我做错了。我在任何论坛上都没有找到任何相关的东西,我相信我不知道我在找什么

我的输出..

我想获得的json正是这个,我相信解决方案是直接在模型中忘记这个“增强”,有人可以帮助我吗?

},

0 投票
1 回答
238 浏览

node.js - 如何使用 Knex js 创建 varchar 为 30 的列?

我在我的节点应用程序中使用 Knex js,我需要一些带有 varchar 330 和 50 的列,但我找不到任何资源来解释如何使用 Knex 实现这一点。

我需要类似的东西
table.string("userName").notNullable().varchar(30);

0 投票
2 回答
298 浏览

knexjs - Knex 迁移错误 .spread() 不是函数

在终端中运行命令“knex migrate:latest”时,出现此错误...

我已经从我的计算机中完全删除了 Brew 和 NPM 的所有东西,重新安装它们并多次完全重写我的服务器,希望找到解决方案,但是在每个角落我都遇到了同样的错误,.spread() 不是功能。

在这里您可以看到我正在运行当前版本的 Knex.js:

但是,我无法发现如何卸载 Knex-Cli:

我遇到了一个线程,它提到它可能是遗留的 Bluebird 代码,但是在任何人能够提供答案之前,该线程就被关闭了。希望问题出在 Knex CLI 中,我已成功卸载 Knex,但无法删除 Knex CLI。我完全不知所措。我学到了很多东西,但没有什么能让我越过这堵墙。谁能帮我解决这个问题?