作為一個簡單的背景,我有一個表foo,帶有一個可為空的 int 外鍵bar_id。我有一個函數可以bar從 中刪除關聯foo,也就是將其設置為NULL。我已經嘗試了一切:我嘗試使用sql.NullInt64作為列類型,然后foo.BarId.Valid = false // even set Int64 = 0 for good measuredb.Save(&foo) // with LogMode(true)bar_id未在 UPDATE 語句中更新我試過:db.Raw("UPDATE foo SET bar_id = NULL WHERE id = ?", foo.ID).Row().Scan(&foo)謝天謝地,SQL 是正確的,但是對象沒有更新。我認為我的 gorm 版本Error也沒有。我嘗試將 Foo.BarId 的類型更改為*int64,并將指針設置為nil,但輸出查詢沒有更改bar_id為 NULL。我需要做什么?
Gorm:如何將整數列設置為空,并更新內存中的模型?
慕碼人8056858
2023-06-05 19:28:23