在 node.js 中回填数据

Backfilling data in node.js

提问人:aldm 提问时间:3/6/2023 更新时间:3/6/2023 访问量:89

问:

在 Rails 中,我使用回填 gem 来回填数据。node.js中有类似的东西吗?不是迁移架构,而是在现有表中填充/填充数据。例如,在引入新列时,我们可能希望根据其他列填充它,或者预先交换它的值。 我发现的关闭是 Sequelize 种子

但是,种子设定是为了插入新数据,这也可用于更改数据。如果需要,可以选择多次启动回填(例如,如果我们想修复损坏的数据),这将是理想的选择

顺便说一句,我们使用 Postgres DB

有什么建议吗?

谢谢

节点 .js PostgreSQL 迁移 种子

评论


答:

0赞 Zegarek 3/6/2023 #1

这听起来像是默认作业、生成的列或普通更新。问题是无法引用其他列,并且无法插入或更新生成的值为其他任何值。我认为sequelize defaultValue仅限于可以定义为SQL的内容。defaultdefault

您可以定义列并让它使用值初始化,update() 非选择性地设置您的起始默认值,每当您需要恢复到该值时,您可以向更新添加一个以定位正确的记录。NULLwhere

模型钩子可以让你拦截新记录(或创建新记录后的任何活动)并注入你的默认值。