Sequelize 跳过将特定列插入到我的 postgres 数据库中

问题描述 投票:0回答:1

我有一个 Nodejs 应用程序,用于将值插入到我的 Postgres 数据库中。我发送的有效负载包含字符串、数字和 json 的混合值。我有一个脚本,每 10 分钟插入一条记录,其中包含两列 A(字符串)和 B 列(json)。插入成功。然而,几个小时后,sequealize 函数仅插入 A 列的值并跳过 B 列。然后在脚本中,如果我传递具有不同列(字符串或数字)的有效负载,它们会被插入,但 json 列不会被插入。然后我重新启动我的应用程序并运行脚本,成功插入数据库。

"msg":"The payload is :{\n  \"userId\": \"user-1726164444155\",\n  \"user\": \"abc\",\n  \"customdata\": {\n    \"test\": 10,\n    \"profileComplete\": \"0.00\"\n  },\n  \"id\": \"x1623836053988_user-1726164444155\"\n}"}

执行(默认):插入“Users”(“id”,“userid”,“user”,“createdat”,“updatedat”)值($1,$2,$3,$4,$5)返回

它会跳过自定义数据的插入^。

INSERT INTO "Users" ("id","userid","user","customdata","createdat","updatedat") VALUES ($1,$2,$3,$4,$5,$6) RETURNING

但是,当我重新启动应用程序时,自定义数据的插入会成功进行。这里的customdata是json类型的。

每当我重新启动应用程序时,就会成功插入 json 列。不确定重新启动应用程序和记录插入之间的联系是什么。这可能不是 postgres DB 的问题,因为我可以直接在那里插入 json 类型的记录。 奇怪的是 Sequelize 不会抛出任何错误。 当前使用的版本:“sequelize”:“6.15.0”

node.js database postgresql validation sequelize.js
1个回答
0
投票

如果你看到这个问题,你明白这个问题在问什么吗?为什么不直接粘贴最简单的代码

© www.soinside.com 2019 - 2024. All rights reserved.