mysql.go 613 B

1234567891011121314151617181920212223242526272829303132
  1. package database
  2. import (
  3. "log"
  4. "gorm.io/driver/mysql"
  5. "gorm.io/gorm"
  6. "gorm.io/gorm/logger"
  7. "fwh-toolbox-server/models/fwh_pro/query_fwh_pro"
  8. )
  9. var MySQL *gorm.DB
  10. func InitMySQL(dsn string) (*gorm.DB, error) {
  11. db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{
  12. Logger: logger.Default.LogMode(logger.Info),
  13. })
  14. if err != nil {
  15. log.Printf("failed to connect to MySQL: %v", err)
  16. return nil, err
  17. }
  18. MySQL = db
  19. // 初始化Query
  20. query_fwh_pro.SetDefault(db)
  21. return db, nil
  22. }
  23. // 示例DSN格式:
  24. // user:pass@tcp(127.0.0.1:3306)/dbname?charset=utf8mb4&parseTime=True&loc=Local&readTimeout=30s