golang如何連接數(shù)據(jù)庫
1、連接數(shù)據(jù)庫首先需要有連接驅動,安裝驅動
go get github.com/go-sql-driver/mysql
下載成功后會保存到當前系統(tǒng)的GOPATH目錄下的src子目錄中
2、連接數(shù)據(jù)庫
● 構建連接, 格式是:”用戶名:密碼@tcp(IP:端口)/數(shù)據(jù)庫?charset=utf8”
● 打開數(shù)據(jù)庫,前者是驅動名,所以要導入:
“github.com/go-sql-driver/mysql”
● 設置數(shù)據(jù)庫大連接數(shù)和設置上數(shù)據(jù)庫大閑置連接數(shù)
● 驗證連接:使用Ping()函數(shù)
3、golang連接數(shù)據(jù)庫示例代碼:
import ( "database/sql" "fmt" "strings" // 安裝方式: go get -u github.com/go-sql-driver/mysql _ "github.com/go-sql-driver/mysql" ) var ( dbhostsip = "127.0.0.1:3306" dbusername = "root" dbpassword = "123456" dbname = "chat" ) // 初始化數(shù)據(jù)庫 func InitDB() (*sql.DB, error) { //構建連接信息 dbinfo := strings.Join([]string{dbusername, ":", dbpassword, "@tcp(", dbhostsip, ")/", dbname, "?charset=utf8"}, "") fmt.Println(dbinfo) //打開數(shù)據(jù)庫,前面是驅動名稱,所以要導入:mysql驅動github.com/go-sql-driver/mysql dbins, err := sql.Open("mysql", dbinfo) if nil != err { fmt.Println("Open Database Error:", err) return nil, err } // 設置數(shù)據(jù)庫的大連接數(shù) dbins.SetConnMaxLifetime(100) // 設置數(shù)據(jù)庫大的閑置連接數(shù) dbins.SetMaxIdleConns(10) // 驗證連接 if err = dbins.Ping(); nil != err { fmt.Println("Open Database Fail,Error:", err) return nil, err } fmt.Println("Connect Success!!!") return dbins, nil }
以上就是golang如何連接數(shù)據(jù)庫的詳細內容,更多請關注創(chuàng)新互聯(lián)成都網(wǎng)站設計公司其它相關文章!
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。