| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- package initialize
- /*
- * @Author: 逆光飞翔 191180776@qq.com
- * @Date: 2022-12-08 17:25:49
- * @LastEditors: 逆光飞翔 191180776@qq.com
- * @LastEditTime: 2022-12-08 18:00:00
- * @FilePath: \server\initialize\gorm_mssql.go
- * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
- */
- import (
- "github.com/flipped-aurora/gin-vue-admin/server/config"
- "github.com/flipped-aurora/gin-vue-admin/server/global"
- "github.com/flipped-aurora/gin-vue-admin/server/initialize/internal"
- "gorm.io/driver/sqlserver"
- "gorm.io/gorm"
- )
- // GormMssql 初始化Mssql数据库
- // Author [LouisZhang](191180776@qq.com)
- func GormMssql() *gorm.DB {
- m := global.GVA_CONFIG.Mssql
- if m.Dbname == "" {
- return nil
- }
- mssqlConfig := sqlserver.Config{
- DSN: m.Dsn(), // DSN data source name
- DefaultStringSize: 191, // string 类型字段的默认长度
- }
- // 数据库配置
- general := m.GeneralDB
- if db, err := gorm.Open(sqlserver.New(mssqlConfig), internal.Gorm.Config(general)); err != nil {
- return nil
- } else {
- db.InstanceSet("gorm:table_options", "ENGINE="+m.Engine)
- sqlDB, _ := db.DB()
- sqlDB.SetMaxIdleConns(m.MaxIdleConns)
- sqlDB.SetMaxOpenConns(m.MaxOpenConns)
- return db
- }
- }
- // GormMssqlByConfig 初始化Mysql数据库用过传入配置
- func GormMssqlByConfig(m config.Mssql) *gorm.DB {
- if m.Dbname == "" {
- return nil
- }
- mssqlConfig := sqlserver.Config{
- DSN: m.Dsn(), // DSN data source name
- DefaultStringSize: 191, // string 类型字段的默认长度
- }
- // 数据库配置
- general := m.GeneralDB
- if db, err := gorm.Open(sqlserver.New(mssqlConfig), internal.Gorm.Config(general)); err != nil {
- panic(err)
- } else {
- db.InstanceSet("gorm:table_options", "ENGINE=InnoDB")
- sqlDB, _ := db.DB()
- sqlDB.SetMaxIdleConns(m.MaxIdleConns)
- sqlDB.SetMaxOpenConns(m.MaxOpenConns)
- return db
- }
- }
|