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

以上就是GORM 操作数据库出现“Unknown column 'created_at' in 'field list'”错误,如何解决?的详细内容,更多请关注其它相关文章!