php中文网

Go 中 GORM 操作数据库报错“Unknown column 'created_at' in 'field list'”:如何解决?

php中文网

go 中 gorm 操作数据库异常

在使用 gorm 操作数据库时,你可能会遇到 error 1054 (42s22): unknown column 'created_at' in 'field list' 的异常。这通常是由于以下原因引起的:

原因: gorm 在创建表时没有使用 gorm.model 结构体,导致新增操作中存在 gorm 的自带字段,如 created_at,而表中却没有这些字段。

解决方案:

方案 1:

  • 检查新增接口的结构体中是否存在 gorm.model 结构体。如果有,将其移除。

方案 2:

  • 使用 gorm 的 automigrate 方法创建表。这种方法会在创建表时自动添加 gorm 自带的字段:
db.automigrate(&mymodel{})

注意: 如果你希望保留自定义的字段,请在调用 automigrate 方法时将 gorm.model 嵌入到结构体中:

type MyModel struct {
  gorm.Model
  // 自定义字段
}

有关 gorm 嵌入结构体的更多信息,请参阅官方文档:

  • [嵌入结构体](https://gorm.io/zh_cn/docs/models.html)

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