Mysql 是否可以使用sequelize部分更新行?
假设我有一张这样的桌子: 以及包含Mysql 是否可以使用sequelize部分更新行?,mysql,node.js,sequelize.js,Mysql,Node.js,Sequelize.js,假设我有一张这样的桌子: 以及包含[ {ID:'0',Name:'Leo',年龄:21岁,当前状态:5}, {ID:'1',姓名:'George',年龄:26岁,现州:6}, {ID:'2',姓名:'Diana',年龄:27岁,当前州:4} ] 如何更新列ID、Name、Age和CurrentState,而不影响IsAdmin列的值 如果我运行以下代码 Table.bulkCreate([ {ID: '0', Name: 'Leo', Age: 21, CurrentState: 5},
[
{ID:'0',Name:'Leo',年龄:21岁,当前状态:5},
{ID:'1',姓名:'George',年龄:26岁,现州:6},
{ID:'2',姓名:'Diana',年龄:27岁,当前州:4}
]
如何更新列ID
、Name
、Age
和CurrentState
,而不影响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']
})
- 排列
- 可选的
- 如果行键已存在,则要更新的字段(在重复键更新时)?(仅mysql支持)。默认情况下,所有字段都会更新