| 123456789101112131415161718192021222324252627282930313233343536 |
- 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
- }
|