我有一个“user”表,其中一个字段“info”是 JSON 结构:
用户表有以下字段:id、name、info、created
信息字段具有以下结构:
信息:{ 电子邮件, 密码, 设备: { 类型, 代币 } }
如何使用 Sequelize 更新 Postgres 中特定用户的 token 字段?
最佳答案
我知道这是一个关于sequelize.js
的问题,但我对此了解不多,所以让我给出一个关于postgresql的一般性答案(随意忽略它)。首先,postgresql不支持修改json
值。 json
列主要用于在数据库中存储 JSON 数据,而不是操作 JSON 数据。如果您确实想操作数据库中的 JSON 数据,那么您必须使用 jsonb 列。可以借助 jsonb_set
函数和 ||
运算符修改 jsonb
。在您的情况下,如果您可以运行原始 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/