package db import ( "os" "gorm.io/driver/mysql" "gorm.io/gorm" ) // 定义User模型 type User struct { UserID int `gorm:"primaryKey"` Username string `gorm:"not null"` Email string `gorm:"not null"` AvatarURL string AccessToken string `gorm:"not null"` } // 初始化GORM数据库 func initializeDB() (*gorm.DB, error) { dsn := os.Getenv("MYSQL_DSN") db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{}) if err != nil { return nil, err } return db, nil } // 创建用户 func createUser(db *gorm.DB, user *User) error { result := db.Create(user) if result.Error != nil { return result.Error } return nil } // 根据用户ID查询用户 func getUserByID(db *gorm.DB, userID int) (*User, error) { var user User result := db.First(&user, userID) if result.Error != nil { return nil, result.Error } return &user, nil } // 更新用户 func updateUser(db *gorm.DB, user *User) error { result := db.Save(user) if result.Error != nil { return result.Error } return nil } // 删除用户 func deleteUser(db *gorm.DB, user *User) error { result := db.Delete(user) if result.Error != nil { return result.Error } return nil }