引入sqlx包
import (
"fmt"
"github.com/jmoiron/sqlx"
)
定义数据库参数配置
var (
sqlxdbConfig = DBConfig{
Host: "127.0.0.1", // ip
Port: 5432, // psql 5432
UserName: "zyf", // 用户名
Password: "123", // 密码
DBName: "sqlxdb", // 数据库
}
sqlxdb *sqlx.DB
)
// 数据库配置
type DBConfig struct {
Host string
Port int32
UserName string
Password string
DBName string
}
函数处理
type Req struct{
id int `json:"id" db:"id"`
}
// main函数
func main(){
// 调链接数据库函数
sqlxdb = postgres(sqlxdbConfig)
// 一条sqlx使用查询实例
sqlxReq := make([]Req, 0)
sql := "select * from sqlx"
if err := sqlxdb.Unsafe().Select(&sqlxReq, sql2); err != nil {
fmt.Printf(" err:%v\n", err)
return
}
}
//ToString 表示连接数据库的字符串
func (c DBConfig) ToString() string {
return fmt.Sprintf("host=%s port=%d user=%s "+
"password=%s dbname=%s sslmode=disable", c.Host, c.Port,
c.UserName, c.Password, c.DBName,
)
}
func postgres(dbconfig DBConfig) *sqlx.DB {
// 链接数据库
db, err := sqlx.Open("postgres", dbconfig.ToString())
if err != nil {
fmt.Printf(err)
}
// 最大链接数
db.SetMaxIdleConns(10)
return db
}
详细sql语句使用查看官方文档:http://go-database-sql.org/index.html