PostgreSQL驱动

属性
命名空间 fize\db\realization\pgsql\mode\driver
类名 Pgsql
方法:
方法名 说明
__construct() 构造时创建连接
__destruct() 析构时关闭连接
cancelQuery() 取消异步查询
clientEncoding() 取得客户端编码方式
close() 关闭连接
connectPoll() 正在进行尝试轮询 PostgreSQL 链接状态
connect() 打开一个 PostgreSQL 连接
connectionBusy() 获知连接是否为忙
connectionReset() 重置连接(再次连接)
connectionStatus() 获得连接状态
consumeInput() 读取连接上的输入
convert() 将关联的数组值转换为适合 SQL 语句的格式
copyFrom() 根据数组将记录插入表中
copyTo() 将一个表拷贝到数组中
dbname() 获得数据库名
delete() 删除记录
endCopy() 与 PostgreSQL 后端同步
escapeBytea() 转义 bytea 类型的二进制数据
escapeIdentifier() 转义用于插入文本字段的标识符
escapeLiteral() 转义用于插入文本字段的文字
escapeString() 转义 text/char 类型的字符串
execute() 发送一个请求来执行带有给定参数的准备好的语句,并等待结果
flush() 刷新链接中已处理的数据查询
getNotify() Ping 数据库连接
getPid() 取得后端(数据库服务器进程)的 PID
getResult() 取得异步查询结果
host() 返回和某连接关联的主机名
insert() 将数组插入到表中
lastError() 得到某连接的最后一条错误信息
lastNotice() 返回 PostgreSQL 服务器最新一条公告信息
loCreate() 新建一个大型对象
loExport() 将大型对象导出到文件
loImport() 将文件导入为大型对象
loOpen() 打开一个大型对象
loUnlink() 删除一个大型对象
metaData() 获得表的元数据
options() 获得和连接有关的选项
parameterStatus() 查找服务器的当前参数设置
ping() Ping 数据库连接
port() 返回该连接的端口号
prepare() 提交一个请求,用给定的参数创建一个准备好的语句,并等待完成
putLine() 向 PostgreSQL 后端发送以 NULL 结尾的字符串
queryParams() 向服务器提交一个命令并等待结果,同时能够独立于SQL命令文本传递参数
query() 执行查询
select() 选择记录
sendExecute() 发送一个请求来执行带有给定参数的准备好的语句,而不需要等待结果
sendPrepare() 发送一个请求,使用给定的参数创建一个准备好的语句,而不需要等待完成
sendQueryParams() 在不等待结果的情况下向服务器提交命令和单独的参数
sendQuery() 发送异步查询
setClientEncoding() 设定客户端编码
setErrorVerbosity() 确定消息的冗长
socket() 获取PostgreSQL连接下套接字的只读句柄
trace() 启动一个 PostgreSQL 连接的追踪功能
transactionStatus() 返回服务器的当前事务内状态
tty() 返回该连接的 tty 号
unescapeBytea() 取消 bytea 类型中的字符串转义
untrace() 关闭 PostgreSQL 连接的追踪功能
update() 更新表
version() 返回一个包含客户端、协议和服务器版本的数组(如果可用)

方法

__construct()

构造时创建连接

public function __construct (

    string $connection_string,

    bool $pconnect = false,

    int $connect_type = null

)
参数:
名称 说明
connection_string 连接字符串
pconnect 是否使用长连接
connect_type PGSQL_CONNECT_FORCE_NEW使用新连接

__destruct()

析构时关闭连接

public function __destruct ()

cancelQuery()

取消异步查询

public function cancelQuery () : bool

clientEncoding()

取得客户端编码方式

public function clientEncoding () : string

close()

关闭连接

public function close ()

connectPoll()

正在进行尝试轮询 PostgreSQL 链接状态

public function connectPoll () : int
返回值:返回常量 PGSQL_POLLING_FAILED, PGSQL_POLLING_READING, PGSQL_POLLING_WRITING, PGSQL_POLLING_OK, 或者 PGSQL_POLLING_ACTIVE

connect()

打开一个 PostgreSQL 连接

public function connect (

    string $connection_string

)
参数:
名称 说明
connection_string 连接字符串

connectionBusy()

获知连接是否为忙

public function connectionBusy () : bool

connectionReset()

重置连接(再次连接)

public function connectionReset () : bool

connectionStatus()

获得连接状态

public function connectionStatus () : int
返回值:可能的状态为 PGSQL_CONNECTION_OK 和 PGSQL_CONNECTION_BAD

consumeInput()

读取连接上的输入

public function consumeInput () : bool

convert()

将关联的数组值转换为适合 SQL 语句的格式

public function convert (

    string $table_name,

    array $assoc_array,

    int $options = 0

) : array
参数:
名称 说明
table_name 表名
assoc_array 键值对
options 常量PGSQL_CONV_IGNORE_DEFAULT, PGSQL_CONV_FORCE_NULL, PGSQL_CONV_IGNORE_NOT_NULL

copyFrom()

根据数组将记录插入表中

public function copyFrom (

    string $table_name,

    array $rows,

    string $delimiter = null,

    string $null_as = null

) : bool
参数:
名称 说明
table_name 表名
rows 要插入的记录
delimiter 间隔符
null_as NULL值的替代

copyTo()

将一个表拷贝到数组中

public function copyTo (

    string $table_name,

    string $delimiter = null,

    string $null_as = null

) : array
参数:
名称 说明
table_name 表名
delimiter 间隔符
null_as NULL值的替代

dbname()

获得数据库名

public function dbname () : string

delete()

删除记录

public function delete (

    string $table_name,

    array $assoc_array,

    int $options = 512

) : bool|string
参数:
名称 说明
table_name 表名
assoc_array 以 field=>value 格式给出的条件
options 常量PGSQL_CONV_FORCE_NULL, PGSQL_DML_NO_CONV, PGSQL_DML_EXEC or PGSQL_DML_STRING
返回值:

选项带PGSQL_DML_STRING时返回SQL语句,其他情况返回bool

endCopy()

与 PostgreSQL 后端同步

public function endCopy () : bool

escapeBytea()

转义 bytea 类型的二进制数据

public function escapeBytea (

    string $data

) : string
参数:
名称 说明
data 二进制字符串

escapeIdentifier()

转义用于插入文本字段的标识符

public function escapeIdentifier (

    string $data

) : string
参数:
名称 说明
data 文本

escapeLiteral()

转义用于插入文本字段的文字

public function escapeLiteral (

    string $data

) : string
参数:
名称 说明
data 文本

escapeString()

转义 text/char 类型的字符串

public function escapeString (

    string $data

) : string
参数:
名称 说明
data 文本

execute()

发送一个请求来执行带有给定参数的准备好的语句,并等待结果

public function execute (

    string $stmtname,

    array $params

) : \fize\db\realization\pgsql\mode\driver\pgsql\Result|bool
参数:
名称 说明
stmtname SQL预处理语句
params 绑定参数
返回值:

Result对象来进行数据集操作,失败时返回false

flush()

刷新链接中已处理的数据查询

public function flush () : mixed

getNotify()

Ping 数据库连接

public function getNotify (

    int $result_type = null

) : array
参数:
名称 说明
result_type 返回类型
返回值:

通告消息

getPid()

取得后端(数据库服务器进程)的 PID

public function getPid () : int

getResult()

取得异步查询结果

public function getResult () : \fize\db\realization\pgsql\mode\driver\pgsql\Result|bool
返回值:Result对象来进行数据集操作,失败时返回false

host()

返回和某连接关联的主机名

public function host () : string

insert()

将数组插入到表中

public function insert (

    string $table_name,

    array $assoc_array,

    int $options = 512

) : mixed
参数:
名称 说明
table_name 表名
assoc_array 数组
options 常量PGSQL_CONV_OPTS, PGSQL_DML_NO_CONV, PGSQL_DML_EXEC, PGSQL_DML_ASYNC or PGSQL_DML_STRING

lastError()

得到某连接的最后一条错误信息

public function lastError () : string

lastNotice()

返回 PostgreSQL 服务器最新一条公告信息

public function lastNotice () : string

loCreate()

新建一个大型对象

public function loCreate () : int

loExport()

将大型对象导出到文件

public function loExport (

    int $oid,

    string $pathname

) : bool
参数:
名称 说明
oid 要导出的数据库里的大型对象的 OID
pathname 要导出的数据库里的大型对象的文件在客户端上完整路径和文件名

loImport()

将文件导入为大型对象

public function loImport (

    string $pathname,

    mixed $object_id = null

) : int
参数:
名称 说明
pathname 变量指明了要导入为大型对象的文件名
object_id 尝试用该对象ID创建

loOpen()

打开一个大型对象

public function loOpen (

    int $oid,

    string $mode

) : \fize\db\realization\pgsql\mode\driver\pgsql\Lo|bool
参数:
名称 说明
oid 指定了有效的大型对象的 oid
mode 可以为 “r”,”w” 或者 “rw”。
返回值:

失败则返回 FALSE

metaData()

获得表的元数据

public function metaData (

    string $table_name

) : array
参数:
名称 说明
table_name 表名

options()

获得和连接有关的选项

public function options () : string

parameterStatus()

查找服务器的当前参数设置

public function parameterStatus (

    string $param_name

) : string
参数:
名称 说明
param_name 参数名

ping()

Ping 数据库连接

public function ping () : bool

port()

返回该连接的端口号

public function port () : int

prepare()

提交一个请求,用给定的参数创建一个准备好的语句,并等待完成

public function prepare (

    string $stmtname,

    string $query

) : resource
参数:
名称 说明
stmtname 名称
query 语句

putLine()

向 PostgreSQL 后端发送以 NULL 结尾的字符串

public function putLine (

    string $data

) : bool
参数:
名称 说明
data 数据

queryParams()

向服务器提交一个命令并等待结果,同时能够独立于SQL命令文本传递参数

public function queryParams (

    string $query,

    array $params

) : \fize\db\realization\pgsql\mode\driver\pgsql\Result|bool
参数:
名称 说明
query SQL语句,支持占位符
params 绑定参数
返回值:

失败时返回false

query()

执行查询

public function query (

    string $query

) : \fize\db\realization\pgsql\mode\driver\pgsql\Result|bool
参数:
名称 说明
query SQL语句
返回值:

失败时返回false

select()

选择记录

public function select (

    string $table_name,

    array $assoc_array,

    int $options = 512

) : array|string
参数:
名称 说明
table_name 表名
assoc_array 条件数组
options 选项常量
返回值:

如果选项带PGSQL_DML_STRING则返回SQL语句,其他返回结果数组

sendExecute()

发送一个请求来执行带有给定参数的准备好的语句,而不需要等待结果

public function sendExecute (

    string $stmtname,

    array $params

) : bool
参数:
名称 说明
stmtname 预处理语句名称
params 绑定参数

sendPrepare()

发送一个请求,使用给定的参数创建一个准备好的语句,而不需要等待完成

public function sendPrepare (

    string $stmtname,

    string $query

) : bool
参数:
名称 说明
stmtname 预处理语句名称
query SQL语句

sendQueryParams()

在不等待结果的情况下向服务器提交命令和单独的参数

public function sendQueryParams (

    string $query,

    array $params

) : bool
参数:
名称 说明
query SQL语句
params 绑定参数

sendQuery()

发送异步查询

public function sendQuery (

    string $query

) : bool
参数:
名称 说明
query SQL语句

setClientEncoding()

设定客户端编码

public function setClientEncoding (

    string $encoding

) : int
参数:
名称 说明
encoding 编码
返回值:

成功返回 0,出错返回 -1

setErrorVerbosity()

确定消息的冗长

public function setErrorVerbosity (

    int $verbosity

) : int
参数:
名称 说明
verbosity 冗长
返回值:

常量PGSQL_ERRORS_TERSE, PGSQL_ERRORS_DEFAULT 或 PGSQL_ERRORS_VERBOSE

socket()

获取PostgreSQL连接下套接字的只读句柄

public function socket () : resource

trace()

启动一个 PostgreSQL 连接的追踪功能

public function trace (

    string $pathname,

    string $mode = "w"

) : bool
参数:
名称 说明
pathname 记录到 pathname 指定的文件中
mode 模式

transactionStatus()

返回服务器的当前事务内状态

public function transactionStatus () : int

tty()

返回该连接的 tty 号

public function tty () : string

unescapeBytea()

取消 bytea 类型中的字符串转义

public static function unescapeBytea (

    string $data

) : string
参数:
名称 说明
data 字符串

untrace()

关闭 PostgreSQL 连接的追踪功能

public function untrace () : bool

update()

更新表

public function update (

    string $table_name,

    array $data,

    array $condition,

    int $options = 512

) : bool|string
参数:
名称 说明
table_name 表名
data 数据
condition 条件
options 选项常量
返回值:

选项带PGSQL_DML_STRING时返回SQL语句,其他情况返回bool

version()

返回一个包含客户端、协议和服务器版本的数组(如果可用)

public function version () : array