如何在Sequelize中使用MySQL JSON数据类型

时间:2018-04-04 20:02:46

标签: sequelize.js mysql-5.7

我正在尝试将MySQL 5.7与Sequelize一起使用,我想在我的attributes表上使用users字段的JSON数据类型来跟踪用户属性,例如home_phone,mobile_phone, work_phone,地址以及每个用户可能拥有或不拥有的其他几个属性/设置。

我已经能够找到执行选择的文档:http://docs.sequelizejs.com/manual/tutorial/querying.html#json

我很难找到有关如何执行创建,更新和删除的文档。

我想我总是可以做一个原始查询,但是有一种续集方式可以做到这一点吗?

更新1

我正在寻找如何在sequelize中执行这样的查询:

update Users 
set user_attributes = JSON_SET(user_attributes, "$.phone", "5554443333") 
where id=7;

1 个答案:

答案 0 :(得分:0)

使用Sequelize.fn方法:

User.update({
  user_attributes: Sequelize.fn("JSON_SET", Sequelize.col('user_attributes'), "$.phone", "5554443333")
}, {
  where: {id: 7}
})