我有一个“用户”表,其中一个字段“信息”是 JSON 结构:
用户表有以下字段:id、name、info、created
信息归档具有以下结构:
信息:{
电子邮件,
密码,
设备: {
类型,
token
}
}
如何使用 Sequelize 更新 Postgres 中特定用户的 token 字段?
最佳答案
我知道这是一个关于 sequelize.js
的问题,但我对它了解不多,所以让我给出一个关于 postgresql 的一般答案(可以随意忽略它)。首先,postgresql 不支持修改 json
值。 json
列主要用于在数据库中存储 JSON 数据,而不是操作 JSON 数据。如果您真的想操作数据库中的 JSON 数据,那么您必须使用 jsonb
列。 jsonb
可以在 jsonb_set
函数和 ||
运算符的帮助下进行修改。在您的情况下,如果您可以运行原始 SQL 查询,则可以执行以下操作:
UPDATE "user"
SET info = jsonb_set(info,'{device,token}','123')
WHERE id = 31;
关于json - 在 Postgres 中使用 Sequelize 更新特定的 JSON 字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39459894/