2 Star 0 Fork 0

TeamsHub/backend-gopkg

Create your Gitee Account
Explore and code with more than 13.5 million developers,Free private repositories !:)
Sign up
文件
Clone or Download
sqlServer.go 2.20 KB
Copy Edit Raw Blame History
HCY authored 2024-06-06 09:25 +08:00 . [REV]
package orm
import (
"fmt"
"gitee.com/wuzheng0709/backend-gopkg/infrastructure/pkg/gin/log"
"gorm.io/driver/sqlserver"
"gorm.io/gorm"
"gorm.io/plugin/dbresolver"
"net/url"
)
type WriterSqlServer struct {
}
func (w WriterSqlServer) Printf(format string, args ...interface{}) {
// log.Infof(format, args...)
fmt.Printf(format, args...)
}
var sqlServerDB *gorm.DB
var sqlServerDbMaps = make(map[string]*gorm.DB)
//func init() {
// sqlServerDB = ConnectSqlServer(config.C.SqlServer.UserName, config.C.SqlServer.Password, config.C.SqlServer.Address, config.C.SqlServer.Port, config.C.SqlServer.DbName)
// var sqls []sQLServerHosts
// if err := GetMysqlDB().Model(sQLServerHosts{}).Scan(&sqls).Error; err != nil {
// log.Error("查询 sql server 数据库失败,err:", err.Error)
// return
// }
// for _, sql := range sqls {
// SetSqlDb(sql.DbName, ConnectSqlServer(sql.User, sql.Passwd, sql.Address, sql.Port, sql.DbName))
// }
//}
func ConnectSqlServer(MySqlUserName, Password, Address string, Port int, dbName string) *gorm.DB {
log.Info(dbName + " sqlServer 链接中。。。")
dsn := fmt.Sprintf("sqlserver://%s:%s@%s:%d?database=%s", MySqlUserName, url.PathEscape(Password), Address, Port, dbName)
db, err := gorm.Open(sqlserver.Open(dsn), &gorm.Config{})
if err != nil {
return nil
}
log.Info(dbName + " sqlServer 链接成功。")
db.Use(
dbresolver.Register(dbresolver.Config{ /* xxx */ }),
//SetConnMaxIdleTime(time.Hour)
//SetConnMaxLifetime(24 * time.Hour).
//SetMaxIdleConns(100).
//SetMaxOpenConns(200),
)
return db
}
func SetSqlServerDb(key string, db *gorm.DB) {
sqlServerDbMaps[key] = db
}
// 本部oa
func GetSqlServerDB() *gorm.DB {
return sqlServerDbMaps["hpdi"]
}
// 城规院
func GetSqlServerDBOfCGY() *gorm.DB {
return sqlServerDbMaps["hpdicgy"]
}
// 桥监
func GetSqlServerDBOfQJ() *gorm.DB {
return sqlServerDbMaps["hpditmu"]
}
// 大数据
func GetSqlServerDBOfDSJ() *gorm.DB {
return sqlServerDbMaps["hpdidsjpro"]
}
// 监理
func GetSqlServerDBOfJL() *gorm.DB {
return sqlServerDbMaps["hpdijl"]
}
// 分公司
func GetSqlServerDBOfFGS() *gorm.DB {
return sqlServerDbMaps["hpdisub"]
}
// 分公司
func GetAllSqlServerDB() map[string]*gorm.DB {
return sqlServerDbMaps
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wuzheng0709/backend-gopkg.git
git@gitee.com:wuzheng0709/backend-gopkg.git
wuzheng0709
backend-gopkg
backend-gopkg
v1.5.12

Search