GO src中自带了sql包和连接数据库的包。这里以连接MYsql为例子。
sql.Open 就是开启了一个数据库连接处。在执行EXEC 或者 QUERY的时候就会自己去建立连接。因此整个应用程序 只需要初始化一次sql.db指针。然后到处用就oK了。
// dbTest project main.go
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
"time"
)
func IsErr(err error) {
if err != nil {
fmt.Printf("程晗错误:%s", err)
}
}
func main() {
//初始化数据库信息,此时就是一个数据库连接池
db, err := sql.Open("mysql", "test:123456@tcp(192.168.33.9:3306)/jxy2_s001")
IsErr(err)
//封装SQL指令
stmt, err := db.Prepare("update Ch_PlayerEquip set level = 1")
IsErr(err)
//执行影响指令
result, err := stmt.Exec()
IsErr(err)
fmt.Print(result.RowsAffected())
//执行查询
rows, err := db.Query("select playerId,Id,configId,isDress,level from Ch_PlayerEquip")
IsErr(err)
defer rows.Close()
var playerid, configId, id, leave, isdress int
for rows.Next() {
rows.Scan(&playerid, &configId, &id, &leave, &isdress)
fmt.Print(playerid, configId, id, leave, isdress)
}
}