package database import ( "fmt" "log" "yuyue/config" "gorm.io/driver/mysql" "gorm.io/gorm" "gorm.io/gorm/logger" ) var DB *gorm.DB func ConnectDatabase(cfg *config.Config) { dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&parseTime=True&loc=Asia%%2FShanghai", cfg.DBUser, cfg.DBPassword, cfg.DBHost, cfg.DBPort, cfg.DBName, ) var err error DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{ Logger: logger.Default.LogMode(logger.Info), }) if err != nil { log.Fatal("Failed to connect to database:", err) } log.Println("Database connection established!") //// 自动迁移数据库表 //err = DB.AutoMigrate( // &models.User{}, // &models.TimeSlot{}, // &models.Appointment{}, //) //if err != nil { // log.Fatal("Failed to migrate database:", err) //} log.Println("Database migration completed!") } func GetDB() *gorm.DB { return DB }