package database import ( "fmt" "gorm.io/driver/mysql" "gorm.io/gorm" "newaterobot-process/config" ) var DB *gorm.DB // InitDB 初始化数据库连接 func InitDB() error { mysqlConfig := config.GlobalConfig.MySQL // 构建DSN dsn := fmt.Sprintf("%s:%s@tcp(%s:%d)/%s?charset=%s&parseTime=%t&loc=%s", mysqlConfig.Username, mysqlConfig.Password, mysqlConfig.Host, mysqlConfig.Port, mysqlConfig.Dbname, mysqlConfig.Charset, mysqlConfig.ParseTime, mysqlConfig.Loc) var err error DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{}) if err != nil { return fmt.Errorf("failed to connect to database: %v", err) } return nil }