错误1075:不正确的表定义;只能有一个auto列,并且必须定义为键(使用gorm和mysql)

lnlaulya  于 2022-12-25  发布在  Go
关注(0)|答案(1)|浏览(135)

当我添加gorm模型到我的结构我得到了这个错误
我使用gorm模型在我的其他3结构,但只有当我把这个添加到我的日志结构,我得到了错误错误1075:表定义不正确;只能有一个自动列,并且必须将其定义为键以下是我的结构

package migrations

import "gorm.io/gorm"

type Category struct {
   gorm.Model
   Title string `gorm:"type:varchar(255)"`
   Sort  int    `gorm:"sort"`
}

包迁移
import "gorm.io/gorm"
type内容结构{gorm.模型类别Id uint类别模型类别gorm:"foreignKey:category_id"标题字符串gorm:"type:varchar(255)"内容字符串gorm:"content"状态布尔值gorm:"default:true"排序整数gorm:"sort"图像[]图像gorm:"foreignKey:content_id"}
x一个一个一个一个x一个一个二个x

jk9hmnmh

jk9hmnmh1#

当gorm做迁移时,它通常会迁移添加到表中的内容。但是如果你从结构体中删除任何内容,迁移时不会从表中删除该内容。假设有一个auto类型的Key列。如果你从结构体中删除它,迁移后它不会自动从表中删除,而是需要手动从表中删除它。我认为这种情况发生在你身上。

相关问题