gorm中更新多列
Updates
方法支持 struct
和 map[string]interface{}
參數。當使用 struct
更新時,默認情況下,GORM 只會更新非零值的字段
// 根據 `struct` 更新屬性,只會更新非零值的字段
db.Model(&user).Updates(User{Name: "hello", Age: 18, Active: false})
// UPDATE users SET name='hello', age=18, updated_at = '2013-11-17 21:34:10' WHERE id = 111;
// 根據 `map` 更新屬性
db.Model(&user).Updates(map[string]interface{}{"name": "hello", "age": 18, "active": false})
// UPDATE users SET name='hello', age=18, active=false, updated_at='2013-11-17 21:34:10' WHERE id=111;
注意 當通過 struct 更新時,GORM 只會更新非零字段。 如果您想確保指定字段被更新,你應該使用
Select
更新選定字段,或使用map
來完成更新操作