Golang操作PostgreSQL
Golang PostgreSQL 大约 1192 字下载驱动
使用github.com/lib/pq
驱动:https://github.com/lib/pq
go get -u github.com/lib/pq
链接数据库
import (
"database/sql"
"fmt"
"log"
"time"
_ "github.com/lib/pq"
)
var pg *sql.DB
func init() {
psqlInfo := fmt.Sprintf("host=%s port=%d user=%s password=%s dbname=%s sslmode=disable", "127.0.0.1", 5432, "z-blog", "", "z-blog")
db, err := sql.Open("postgres", psqlInfo)
//connStr := "postgres://testuser:testpwd@127.0.0.1/testdb?sslmode=verify-full"
//db, err := sql.Open("postgres", connStr)
if err != nil {
log.Fatal(err)
}
pg = db
pg.SetConnMaxLifetime(time.Minute * 3)
pg.SetMaxOpenConns(10)
pg.SetMaxIdleConns(10)
err = pg.Ping()
if err != nil {
log.Fatal(err)
}
}
func main() {
defer pg.Close()
// TODO
}
查询
占位符:$1
...$n
func queryForObject() {
var (
id int
name string
)
row := db.QueryRow("select id, name from tb_user where id = $1 limit 1", 1)
err := row.Scan(&id, &name)
if err != nil {
log.Fatal(err)
}
log.Println("queryForObject#", id, name)
}
其余操作
其余操作与database/sql
包下相同。
驱动列表
阅读 303 · 发布于 2020-11-10
————        END        ————
扫描下方二维码关注公众号和小程序↓↓↓

昵称:
随便看看
换一批
-
软考-系统架构设计师:软件测试阅读 490
-
走进Rust:结构体方法阅读 283
-
Android使用adb命令录制视频阅读 1598
-
Linux xxx is not in the sudoers file.This incident will be reported阅读 446
-
MySQL外键阅读 495
-
软考-系统架构设计师:反规范化阅读 331
-
lanyus激活时IDEA提示your activation code could not be validated error 1653219阅读 211249
-
Nginx配置之开启Gzip压缩阅读 584
-
软考-系统架构设计师:微内核操作系统阅读 605
-
软考-系统架构设计师:规范化理论-函数依赖阅读 312