Gorm 操作数据库出错:Error 1054 (42S22): Unknown column 'created_at' in 'field list' 怎么办?

gorm 操作数据库出错:error 1054 (42s22): unknown column 'created_at' in 'field list'  怎么办?

gorm操作数据库出错?

在使用gorm操作数据库时,你遇到了error 1054 (42s22): unknown column 'created_at' in 'field list'的异常。这个问题通常出现在两个原因:

  • 未在建表时包含gorm.model结构体:gorm中内置了一些字段,例如created_at,这些字段必须在建表时存在。
  • 新增时结构中存在gorm.model结构体:在新增操作时,如果结构中包含了gorm.model,但建表时未包含,也会导致异常。

解决方案:

  • 方案 1:检查新增操作的结构体是否包含gorm.model,如果包含,将其移除。
  • 方案 2:在建表时使用gorm提供的automigrate方法,同时在结构体中添加gorm.model。

例如,你可以使用以下代码在建表时自动迁移并添加gorm.model:

type User struct {
    Name string
    gorm.Model
}

func CreateTable() error {
    db := ... // 打开数据库连接
    return db.AutoMigrate(&User{})
}

有关嵌入结构体的更多信息,请参阅gorm官方文档:https://gorm.io/zh_cn/docs/models.html

以上就是Gorm 操作数据库出错:Error 1054 (42S22): Unknown column 'created_at' in 'field list' 怎么办?的详细内容,更多请关注其它相关文章!