GORM 操作數據庫出現“Unknown column ‘created_at’ in ‘field list’”錯誤,如何解決?

GORM 操作數據庫出現“Unknown column ‘created_at’ in ‘field list’”錯誤,如何解決?

gorm操作數據庫出現異常

在使用gorm orm框架操作數據庫時,出現“Error 1054 (42s22): unknown column ‘created_at’ in ‘field list’”的異常。這是因為框架生成的sql語句中包含了gorm.model結構體中的“created_at”字段,而你的表中并不存在該字段。

原因和解決方案:

這種情況一般有兩個原因:

  • 原因 1:你的數據模型結構體中包含gorm.model結構體,而創建數據表時沒有同時包含gorm.model結構體。

    • 解決方案:在創建數據表時,使用gorm的automigrate方法并同時在結構體中包含gorm.model結構體,例如:

      db.AutoMigrate(&User{gorm.Model})
  • 原因 2:你的新增接口的結構體中包含gorm.model結構體,導致sql語句中包含了“created_at”字段。

    • 解決方案:去掉新增接口請求中的gorm.model結構體。

gorm中的嵌入結構體:

gorm.model結構體是一個包含常用字段(如id、createdat和updatedat)的嵌入結構體。通過將該結構體嵌入到數據模型結構體中,可以自動生成這些字段的映射。

有關gorm嵌入結構體的更多信息,可以參考官方文檔:https://gorm.io/zh_cn/docs/models.html

? 版權聲明
THE END
喜歡就支持一下吧
點贊6 分享