package db
|
|
import (
|
"fmt"
|
|
"sdkCompare/config"
|
|
"basic.com/valib/logger.git"
|
"gorm.io/driver/mysql"
|
"gorm.io/gorm"
|
)
|
|
var db *gorm.DB
|
|
func ConnectDB() error {
|
var err error
|
|
dsn := fmt.Sprintf("%s:%s@tcp(%s)/%s?charset=utf8mb4",
|
config.MainConf.Username,
|
config.MainConf.Password,
|
config.MainConf.MysqlAddr,
|
config.MainConf.Database)
|
|
db, err = gorm.Open(mysql.Open(dsn), &gorm.Config{
|
// 禁用外键(指定外键时不会在mysql创建真实的外键约束)
|
DisableForeignKeyConstraintWhenMigrating: true,
|
//// 指定表前缀
|
//NamingStrategy: schema.NamingStrategy{
|
// TablePrefix: config.Conf.Mysql.TablePrefix + "_",
|
//},
|
})
|
|
if err != nil {
|
logger.Error("mysql database open err: %s", err.Error())
|
return err
|
}
|
|
return nil
|
}
|