add sqlite

This commit is contained in:
noreply
2024-07-29 10:07:22 +08:00
parent 2cb9ed4393
commit 3d02b41dba
7 changed files with 67 additions and 6 deletions
+2
View File
@@ -14,6 +14,8 @@ func DBInit() {
dbType := viper.GetString("db_type")
if strings.EqualFold(dbType, "postgres") {
PostgreSQLInit()
} else if strings.EqualFold(dbType, "sqlite") {
SqliteInit()
} else {
MysqlInit()
}
+48
View File
@@ -0,0 +1,48 @@
package dao
import (
"github.com/assimon/luuu/config"
"github.com/assimon/luuu/util/log"
"github.com/gookit/color"
"github.com/spf13/viper"
"gorm.io/driver/sqlite"
"gorm.io/gorm"
"gorm.io/gorm/logger"
"gorm.io/gorm/schema"
)
// SqliteInit 数据库初始化
func SqliteInit() {
var err error
dbname := viper.GetString("sqlite_database_filename")
if len(dbname) == 0 {
dbname = ".db"
}
Mdb, err = gorm.Open(sqlite.Open(dbname), &gorm.Config{
NamingStrategy: schema.NamingStrategy{
TablePrefix: viper.GetString("sqlite_table_prefix"),
SingularTable: true,
},
Logger: logger.Default.LogMode(logger.Error),
})
if err != nil {
panic(err)
}
if config.AppDebug {
Mdb = Mdb.Debug()
}
sqlDB, err := Mdb.DB()
if err != nil {
color.Red.Printf("[store_db] sqlite get DB,err=%s\n", err)
panic(err)
}
// sqlDB.SetMaxIdleConns(viper.GetInt("sqlite_max_idle_conns"))
// sqlDB.SetMaxOpenConns(viper.GetInt("sqlite_max_open_conns"))
// sqlDB.SetConnMaxLifetime(time.Hour * time.Duration(viper.GetInt("sqlite_max_life_time")))
err = sqlDB.Ping()
if err != nil {
color.Red.Printf("[store_db] sqlite connDB err:%s", err.Error())
panic(err)
}
log.Sugar.Debug("[store_db] sqlite connDB success")
}