初始化2

This commit is contained in:
2026-07-10 17:33:33 +08:00
parent b51ee98afa
commit 94f6ecf901
59 changed files with 3893 additions and 980 deletions

View File

@@ -7,6 +7,8 @@ import (
"time"
"gorm.io/driver/mysql"
"gorm.io/driver/postgres"
"gorm.io/driver/sqlserver"
"gorm.io/gorm"
"gorm.io/gorm/logger"
)
@@ -15,11 +17,22 @@ import (
var DB *gorm.DB
// InitDB 初始化数据库连接
// 支持: mysql / sqlserver / postgres
func InitDB(cfg *DatabaseConfig) error {
dsn := cfg.DSN()
var dialector gorm.Dialector
switch cfg.Type {
case "sqlserver":
dialector = sqlserver.Open(dsn)
case "postgres":
dialector = postgres.Open(dsn)
default:
dialector = mysql.Open(dsn)
}
var err error
DB, err = gorm.Open(mysql.Open(dsn), &gorm.Config{
DB, err = gorm.Open(dialector, &gorm.Config{
Logger: logger.Default.LogMode(logger.Info),
})
if err != nil {
@@ -37,6 +50,6 @@ func InitDB(cfg *DatabaseConfig) error {
sqlDB.SetMaxOpenConns(100) // 最大打开连接数
sqlDB.SetConnMaxLifetime(time.Hour) // 连接最大存活时间
log.Println("数据库连接成功")
log.Printf("数据库连接成功 [%s]", cfg.Type)
return nil
}