2 Star 0 Fork 0

TeamsHub/backend-gopkg

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
sqlServer.go 2.33 KB
一键复制 编辑 原始数据 按行查看 历史
HCY 提交于 2024-08-05 14:04 . ecm-oa
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&encrypt=disable", 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
}
// 地质平台
// zjsjcx_dba
func GetSqlServerDBOfDZPT() *gorm.DB {
return sqlServerDbMaps["ZJGH_CityKCloud"]
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/wuzheng0709/backend-gopkg.git
git@gitee.com:wuzheng0709/backend-gopkg.git
wuzheng0709
backend-gopkg
backend-gopkg
v1.5.23

搜索帮助