package models import ( "errors" "fmt" "go_mqtt/mydb" "gorm.io/gorm" ) type User struct { Username string `gorm:"primaryKey;size:100"` Password string `gorm:"size:255"` Date string `gorm:"size:255"` Imeinum string `gorm:"size:50"` Sysversion string `gorm:"size:100"` Phonemodel string `gorm:"size:255"` Appversion string `gorm:"size:255"` Name string `gorm:"size:255"` } // Userdyw func init() { fmt.Println("User init()") mydb.DB.AutoMigrate(&User{}) } // TableName 会将 User 的表名重写为 `user` func (User) TableName() string { return "user" } func SaveUser(user *User) { result := mydb.DB.Create(&user) if result.Error != nil { fmt.Println("Failed to create User:", result.Error) } else { fmt.Println("User created successfully!") } } func UpdateUser(item *User) { fmt.Println("用户存在,更新操作") var user User //mydb.DB.First(&user, item.Username) mydb.DB.Where("username = ?", item.Username).First(&user) user.Password = item.Password user.Date = item.Date user.Imeinum = item.Imeinum user.Sysversion = item.Sysversion user.Phonemodel = item.Phonemodel user.Appversion = item.Appversion user.Name = item.Name mydb.DB.Save(&user) } func GetUser(item *User) bool { var user User //mydb.DB.First(&user, item.Username) //result := mydb.DB.First(&user, item.Username).Error result := mydb.DB.Where("username = ?", item.Username).First(&user).Error fmt.Println("-----user---->>") fmt.Println(user) if errors.Is(result, gorm.ErrRecordNotFound) { // 记录不存在 fmt.Println("用户不存在") } else if result == nil { // 记录存在 fmt.Println("用户存在") return true } else { // 其他错误 fmt.Println("查询出错") } return false }