1
0
Fork 0
empact/db/common.go

37 lines
558 B
Go
Raw Normal View History

2015-03-04 19:09:08 +00:00
package db
import (
"database/sql"
2015-03-04 19:14:11 +00:00
_ "github.com/go-sql-driver/mysql"
2015-03-04 19:09:08 +00:00
)
var (
conn *sql.DB
stmts map[string]*sql.Stmt
)
func Connect(uri string) (err error) {
conn, err = sql.Open("mysql", uri)
stmts = map[string]*sql.Stmt{}
return
}
func stmt(query string) *sql.Stmt {
if stmt, ok := stmts[query]; ok {
return stmt
} else {
stmt := prepareStatement(query)
stmts[query] = stmt
return stmt
}
}
func prepareStatement(query string) *sql.Stmt {
if stmt, err = conn.Prepare(query); err == nil {
return stmt
} else {
panic(err)
}
}