gpt4 book ai didi

mysql - 是否可以使用sequelize部分更新行?

转载 作者:行者123 更新时间:2023-11-29 10:31:46 24 4
gpt4 key购买 nike

假设我有一个这样的表:

enter image description here

和一个包含 [ 的对象数组
{ID:'0',姓名:'Leo',年龄:21,当前状态:5},
{ID:'1',姓名:'乔治',年龄:26,当前状态:6},
{ID:'2',姓名:'戴安娜',年龄:27,当前状态:4}
]

如何更新列 IDNameAgeCurrentState 而不影响IsAdmin 列?

如果我运行以下代码

Table.bulkCreate([
{ID: '0', Name: 'Leo', Age: 21, CurrentState: 5},
{ID: '1', Name: 'George', Age: 26, , CurrentState: 6},
{ID: '2', Name: 'Diana', Age: 27, , CurrentState: 4}
], {
updateOnDuplicate: true
})

更新行的所有 IsAdmin 值都将设置为 FALSE,这是其默认值。

如何避免这个问题?

最佳答案

只需传递一个仅包含需要更新的属性的数组

Table.bulkCreate([
{ID: '0', Name: 'Leo', Age: 21, CurrentState: 5},
{ID: '1', Name: 'George', Age: 26, , CurrentState: 6},
{ID: '2', Name: 'Diana', Age: 27, , CurrentState: 4}
], {
updateOnDuplicate: ['Name','CurrentState']
})

options.updateOnDuplicate

  • 数组
  • 可选
  • 如果行键已存在(重复键更新),则要更新的字段? (仅 mysql 支持)。默认情况下,所有字段都会更新。

关于mysql - 是否可以使用sequelize部分更新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47264487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com