Go mysql使用舉例
阿新 • • 發佈:2018-04-06
Go div ret mar idl uri 數據庫 int tab
下載MySQL驅動
$ go get github.com/go-sql-driver/mysql
或者下載源碼放到GOPATH中,下載地址:https://github.com/go-sql-driver/mysql
Example
建表
簡單創建一個table tbl_log包含3各字段ip,name, detail_msg.
下面代碼向表中插入一條記錄。
package main import ( "database/sql" "fmt" "log" _ "github.com/go-sql-driver/mysql" ) var DB *sql.DB var dataBase = "root:123@tcp(127.0.0.1:3306)/new_portal?loc=Local&parseTime=true" func Init() { var err error DB, err = sql.Open("mysql", dataBase) if err != nil { log.Fatalln("open db fail:", err) } DB.SetMaxOpenConns(20) DB.SetMaxIdleConns(15) err = DB.Ping() if err != nil { log.Fatalln("ping db fail:", err) } } func main() { Init() insert() } func insert() { origin := "abc" log.Println("orign:",origin) detailMsg := origin sql := fmt.Sprintf( "insert into tbl_log(ip, name, detail_msg) values (‘%s‘, ‘%s‘, ‘%s‘)", "1.1.0.1", "test.py", detailMsg, ) log.Println("sql:", sql) _, err := DB.Exec(sql) if err != nil { log.Println("exec failed:", err, ", sql:", sql) return } }
output
2018/04/06 10:17:00 orign: abc
2018/04/06 10:17:00 sql: insert into tbl_log(ip, name, detail_msg) values (‘1.1.0.1‘, ‘test.py‘, ‘abc‘)
查看數據庫,已經插入記錄。
Go mysql使用舉例