)//drivertype 資料庫驅動
type drivertype int
const (
mysql drivertype = iota //0
mssql //1
oracle //2
sqllite //3
postgresql //4
)func (d drivertype) string() string
}//dbconfig 資料庫配置
type dbconfig struct
func (c *dbconfig) init()
switch c.drivertype
}//new 建立新得gorm
func (c *dbconfig) new() (db *gorm.db)
db, err := gorm.open(c.drivertype.string(), c.source)
if err != nil
if c.isdebug
db.singulartable(true) //**結構體單複數和資料庫表名單複數必須對應
db.db().setmaxopenconns(100) //設定資料庫連線池最大連線數
db.db().setmaxidleconns(20) //連線池最大允許的空閒連線數,如果沒有sql任務需要執行的連線數大於20,超過的連線會被連線池關閉。
return db}/*
var (
lock *sync.mutex = &sync.mutex{}
instanct *dbconfig
)//getinstance 單例預設初始化dbconfig
func getinstance() *dbconfig
fmt.println(11)
} }return instanct
}*/func main()
db := c.new()
defer db.close()
type user struct
user := user{}
db.first(&user)
fmt.println(user)
}
go語言gorm使用
var jsondata map string inte ce 全域性變數 存放配置檔案的map物件 func initjson configstr string bytes reg regexp.mustcompile configstr reg.replaceallstring configst...
訪問資料庫 訪問資料庫
程式執行的時候,資料都是在記憶體中的。當程式終止的時候,通常都需要將資料儲存到磁碟上,無論是儲存到本地磁碟,還是通過網路儲存到伺服器上,最終都會將資料寫入磁碟檔案。而如何定義資料的儲存格式就是乙個大問題。如果我們自己來定義儲存格式,比如儲存乙個班級所有學生的成績單 名字成績 michael99 bo...
gorm 強制使用索引 必看的資料庫使用規範
關於mysql資料庫規範,相信大家多少看過一些文件。本篇文章給大家詳細分類總結了資料庫相關規範,從庫表命名設計規範講起,到索引設計規範,後面又給出sql編寫方面的建議。相信這些規範適用於大多數公司,也希望大家都能按照規範來使用我們的資料庫,這樣我們的資料庫才能發揮出更高的效能。關於庫 強制 庫的名稱...