摘要:常见类型直接兼容的数组类型。如的,对应的数据源格式,既支持键值对,又支持。书写格式遵守官方规范。格式,支持前缀。其中用户名端口主机名,在数据源中未指定时,有默认值。这能提高倍的执行速度为了发挥好此功能,需要最大可能地允许数据库连接空闲。
用于golang database/sql 的PostgreSQL驱动
go get github.com/blusewang/pg使用
db, err := sql.Open("pg", "postgresql://user:password@host_name/database_name?application_name=app_name") if err != nil { return err } defer db.Close() rows, err := db.Query("select * from bluse where id>$1", 0) if err != nil { return err } ...文档
更多的细节及使用示例,参见: https://godoc.org/github.com/....
特性
在Scan()时,对null值宽容。不推荐使用sql.Null系列类型,接受null值!
以字符串字段的null值为例:向Scan()中传 string型的变量,得到 "",传 *string型的变量,得到 nil。
常见Array类型直接兼容golang的数组类型。如PG的:integer[],对应golang的:[]int64
数据源格式,既支持键值对,又支持URI。书写格式遵守:PG官方规范。
URI格式,支持pg://前缀。
其中用户名、端口、主机名,在数据源中未指定时,有默认值。用户名默认为操作系统当前用户的用户名
积极标记并缓存所有预备语句[包括db.Query、db.Exec、db.Prepare()等的语句],遇到相同的语句请求时,自动复用。这能提高1倍的执行速度!!!
为了发挥好此功能,需要最大可能地允许数据库连接空闲。
配置上推荐将sql.SetMaxIdleConns(x)、sql.SetMaxOpenConns(x)两处的x设置为相同的值!
协议实现此驱动更适合服务于Web
状态 | 功能 | 备注 |
---|---|---|
|
启动 | 必备,实现:无密码,明文密码和md5密码三种认证 |
|
简单查询 | 必备 |
|
扩展查询 | 必备 |
|
取消正在处理的请求 | 必备 |
|
终止 | 必备 |
|
函数调用 | PG官方推荐使用查询去调用函数 |
|
SASL 认证 | 不常用 |
|
异步操作 | 不常用 |
|
COPY操作 | 不常用 |
|
SSL会话加密 | 低效 |
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/39031.html
摘要:类型说明根据中的说明,数据类型是用来存储数据的。它们几乎接受完全相同的值集合作为输入。该结构是非强制的,但是有一个可预测的结构会使集合的查询更容易。如中,表示在和这两个位置出现过,在中这些位置实际上就是元组的行号,包括数据块以及。 json 类型 说明 根据RFC 7159中的说明,JSON 数据类型是用来存储 JSON(JavaScript Object Notation)数据的。这...
摘要:类型说明根据中的说明,数据类型是用来存储数据的。它们几乎接受完全相同的值集合作为输入。该结构是非强制的,但是有一个可预测的结构会使集合的查询更容易。如中,表示在和这两个位置出现过,在中这些位置实际上就是元组的行号,包括数据块以及。 json 类型 说明 根据RFC 7159中的说明,JSON 数据类型是用来存储 JSON(JavaScript Object Notation)数据的。这...
摘要:在上一篇文章中我们讲解了使用语言的标准库包操作数据库的过程,虽然使用包操作数据也是挺方便的,但是需要自己写每一条语句,因此我们可能会自己再度进行封装,以便更好地使用,而使用现有语言开源框架则是代替自己封装的一个更好的方式。在上一篇文章中我们讲解了使用Go语言的标准库sql/database包操作数据库的过程,虽然使用sql/database包操作数据也是挺方便的,但是需要自己写每一条SQL语...
阅读 1867·2021-11-15 11:39
阅读 1073·2020-12-03 17:06
阅读 729·2019-12-27 11:42
阅读 3269·2019-08-30 13:59
阅读 1453·2019-08-26 13:22
阅读 3282·2019-08-26 12:15
阅读 2471·2019-08-26 10:22
阅读 1560·2019-08-23 18:40