1.概述
本手册描述了PHP在Linux环境下连接UXDB数据库。
2.PHP安装
-
安装依赖 在安装PHP,需要先安装libsqlite3x和oniguruma依赖。
yum install libsqlite3x-devel -y yum install oniguruma-devel -y -
安装PHP a. 在/usr/local路径下,下载官网的PHP包:
wget https://www.php.net/distributions/php-7.4.8.tar.gzb. 解压安装包:
tar -zxvf php-7.4.8.tar.gzc.在php-7.4.8路径下,执行如下命令:
./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7 --enable-bcmath --enable-fpm --with-fpm-user=www --with-fpm-group=www --enable-mbstring --enable-phpdbg --enable-shmop --enable-sockets --enable-sysvmsg --enable-sysvsem --enable-sysvshm --with-zlib --with-curl --with-pear --with-openssl --enable-pcntld. 编译并安装php:
make make install -
配置环境变量
在/etc/profile文件里面添加相关的PHP配置。
sudo vim /etc/profileexport GIT SSL NO VERIFY=true export VALGRIND HOME=/usr/local/valgrind export JAVA HOME=/usr/local/java/jdk1.8.0 161 export PHP HOME=/usr/local/php7 PATH=SPATH:SJAVA HOME/bin:SVALGRIND HOME/bin:$PHP HOME/bin export PATH执行如下命令使配置生效:
source /etc/profile
3.uxsql和pdo_uxsql扩展安装
-
获取动态库
-
安装动态库
在PHP扩展安装路径下,解压安装包,得到两个so文件pdo_uxsql.so 和 uxsql.so。
cd /usr/local/php7/lib/php/extensions/no-debug-non-zts-20190902 tar -xvf uxdb-php-linux.tar
4.相关配置
-
php.ini
a. 将源码路径下的php.ini文件拷贝至/usr/local/php7路径下。
cp /usr/local/php-7.4.8/php.ini-development /usr/local/php7/php.inib. 修改配置文件php.ini,如下:
vim /usr/local/php7/php.ini在文件中找到cgi.fix_pathinfo配置项,去掉注释并设置为0,这主要是为了当文件不存在时,阻止Nginx将请求发送到后端的PHP-FPM模块,从而避免恶意脚本注入的攻击。
; A setting of zero causes PHP to behave as before. ; Default is 1. ; http://php.net/cgi.fix-pathinfo cgi.fix_pathinfo=0 ; If cgi.discard_path is enabled, the PHP CGI binary can safely be placed outside ; of the web tree and people will not be able to circumvent .htaccess security. ; http://php.net/cgi.discard-path cgi.discard_path=1新增扩展pdo_uxsql和uxsql:
extension=pdo_uxsql extension=uxsql -
关于php命令
修改完php.ini配置文件后,通过php --ini命令查看ini文件加载情况,如图为已加载:
[root@ux215 php7]# php --ini Configuration File (php.ini) Path: /usr/local/php7 Loaded Configuration File: /usr/local/php7/php.ini Scan for additional .ini files in: (none) Additional .ini files parsed: (none) [root@ux215 php7]#注意
php.ini应该放在安装目录下,而不是安装目录的/etc/下,否则php可能找不到配置文件。
假设安装目录为/usr/local/php7/,那么php.ini应该放在这个目录下,而不是在/usr/local/php7/etc/下。
通过如下命令查看扩展包,确认包含pdo_uxsql和uxsql。
php -m -
创建用户
创建分组 www:
groupadd www创建用户www:
useradd -g www www -
php-fpm.conf和
www.confphp-fpm.conf和
www.conf这两个文档不做任何修改,只需要拷贝至特定目录下:cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
5.php脚本连接使用uxdb
-
启动uxdb
进入uxdb安装目录的bin目录下:
cd /home/uxdb/uxdbinstall/dbsql/bin初始化集群:
./initdb -W -D test启动数据库:
./ux_ctl -D test start -
启动php
执行如下命令启动php:
/usr/local/php7/sbin/php-fpm查看进程:
ps aux | grep php-fpm netstat -tln | grep 9000[root@ux215 php7]# /usr/local/php7/sbin/php-fpm [root@ux215 php7]# ps aux | grep php-fpm root 104595 0.0 0.2 218152 4284 ? Ss 16:49 0:00 php-fpm: master process (/usr/local/php7/etc/php-fpm.conf) www 104596 0.0 0.2 220236 4204 ? S 16:49 0:00 php-fpm: pool www www 104597 0.0 0.2 220236 4208 ? S 16:49 0:00 php-fpm: pool www root 104624 0.0 0.0 112712 968 pts/2 S+ 16:49 0:00 grep --color=auto php-fpm [root@ux215 php7]# netstat -tln | grep 9000 tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN -
脚本连接
在/usr/local/php7/bin目录下创建test.php脚本文件,文件内容如下:
<?php $host = "host=127.0.0.1"; $port = "port=5432"; $dbname = "dbname=UXDB"; $credentials = "user=UXDB password=*"; $db = ux_connect( "$host $port $dbname $credentials" ); if(!$db){ echo "Error : Unable to open database\n"; } else { echo "Opened database successfully\n"; } $sql =<<<EOF CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL); EOF; $ret = ux_query($db, $sql); if(!$ret){ echo ux_last_error($db); } else { echo "Table created successfully\n"; } $sql =<<<EOF INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Allen', 25, 'Texas', 15000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'Teddy', 23, 'Norway', 20000.00 ); INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 ); EOF; $ret = ux_query($db, $sql); if(!$ret){ echo ux_last_error($db); } else { echo "Records created successfully\n"; } $sql =<<<EOF SELECT * from COMPANY; EOF; $ret = ux_query($db, $sql); if(!$ret){ echo ux_last_error($db); exit; } while($row = ux_fetch_row($ret)){ echo "ID = ". $row[0] . "\n"; echo "NAME = ". $row[1] ."\n"; echo "ADDRESS = ". $row[3] ."\n"; echo "SALARY = ".$row[4] ."\n\n"; } echo "Operation done successfully\n"; ux_close($db); ?>执行如下命令,查看结果:
php test.php[uxdb@ux215 ~]$ php test.php Opened database successfully Table created successfully Records created successfully ID = 1 NAME = Paul ADDRESS = California SALARY = 20000 ID = 2 NAME = Allen ADDRESS = Texas SALARY = 15000 ID = 3 NAME = Teddy ADDRESS = Norway SALARY = 20000 ID = 4 NAME = Mark ADDRESS = Rich-Mond SALARY = 65000 Operation done successfully [uxdb@ux215 ~]$ -
uxdb验证
进入uxdb安装目录的bin目录下:
cd /home/uxdb/uxdbinstall/dbsql/bin连接数据库:
./uxsql查看company表中的内容:
select * from company ;uxsql (10.0) Type "help" for help. uxdb=# select * from company; id | name | age | address | salary ----+--------+-----+------------+-------- 1 | Paul | 32 | California | 20000 2 | Allen | 25 | Texas | 15000 3 | Teddy | 23 | Norway | 20000 4 | Mark | 25 | Rich-Mond | 65000 (4 rows) uxdb=#
6.接口介绍
6.1.uxsql·连接接口
6.1.1.ux_connect
-
功能
建立数据库连接(可同时建立多个连接)
-
函数
ux_connect($connection_string) -
参数
表 ux_connect 参数说明
名称 描述 connection_string(输入) 连接字符串,形如 "host=主机 port=端口 dbname=数据库 user=用户 password=密码 sslmode=disable"。 -
返回值
成功返回连接资源,失败返回 false。
6.1.2.ux_pconnect
-
功能
建立持久化数据库连接
-
函数
ux_pconnect($connection_string) -
参数
表 ux_pconnect 参数说明
名称 描述 connection_string(输入) 连接字符串,格式同 ux_connect。 -
返回值
成功返回持久连接资源,失败返回 false。
6.1.3.ux_connect_poll
-
功能
轮询异步连接状态
-
函数
ux_connect_poll($connection) -
参数
表 ux_connect_poll 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回轮询状态:PGSQL_POLLING_FAILED、PGSQL_POLLING_READING、PGSQL_POLLING_WRITING 或 PGSQL_POLLING_OK。
6.1.4.ux_close
-
功能
关闭数据库连接
-
函数
ux_close($connection) -
参数
表 ux_close 参数说明
名称 描述 connection(输入) 连接资源(可选,默认关闭当前连接)。 -
返回值
成功返回 true。
6.1.5.ux_connection_status
-
功能
获取连接状态
-
函数
ux_connection_status($connection) -
参数
表 ux_connection_status 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回 PGSQL_CONNECTION_OK 或 PGSQL_CONNECTION_BAD。
6.1.6.ux_connection_busy
-
功能
判断连接是否繁忙(有未完成的查询)
-
函数
ux_connection_busy($connection) -
参数
表 ux_connection_busy 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
连接繁忙返回 true,否则返回 false。
6.1.7.ux_connection_reset
-
功能
重置连接
-
函数
ux_connection_reset($connection) -
参数
表 ux_connection_reset 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
重置成功返回 true,失败返回 false。
6.1.8.ux_host
-
功能
获取连接的主机名
-
函数
ux_host($connection) -
参数
表 ux_host 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回主机名字符串。
6.1.9.ux_dbname
-
功能
获取连接的数据库名
-
函数
ux_dbname($connection) -
参数
表 ux_dbname 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回数据库名字符串。
6.1.10.ux_port
-
功能
获取连接的端口号
-
函数
ux_port($connection) -
参数
表 ux_port 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回端口号字符串。
6.1.11.ux_tty
-
功能
获取连接的 tty 名
-
函数
ux_tty($connection) -
参数
表 ux_tty 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回 tty 名字符串(通常为空)。
6.1.12.ux_options
-
功能
获取连接选项字符串
-
函数
ux_options($connection) -
参数
表 ux_options 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回连接选项字符串。
6.1.13.ux_version
-
功能
获取客户端/协议版本信息
-
函数
ux_version($connection) -
参数
表 ux_version 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回包含 client、protocol、server 等版本信息的数组。
6.1.14.ux_ping
-
功能
检测连接是否存活
-
函数
ux_ping($connection) -
参数
表 ux_ping 参数说明
名称 描述 connection(输入) 连接资源(可选,默认使用当前连接)。 -
返回值
连接正常返回 true,不可用返回 false。
6.1.15.ux_parameter_status
-
功能
获取服务器参数状态
-
函数
ux_parameter_status($connection, $param_name) -
参数
表 ux_parameter_status 参数说明
名称 描述 connection(输入) 连接资源。 param_name(输入) 要查询的服务器参数名,如 server_version。 -
返回值
返回参数值字符串,参数不存在返回 false。
6.1.16.ux_transaction_status
-
功能
获取当前事务状态
-
函数
ux_transaction_status($connection) -
参数
表 ux_transaction_status 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回事务状态:PGSQL_TRANSACTION_IDLE、PGSQL_TRANSACTION_ACTIVE、PGSQL_TRANSACTION_INTRANS、PGSQL_TRANSACTION_INERROR 或 PGSQL_TRANSACTION_UNKNOWN。
6.2.uxsql·查询执行接口
6.2.1.ux_query
-
功能
执行 SQL 查询(同步)
-
函数
ux_query($connection, $query) -
参数
表 ux_query 参数说明
名称 描述 connection(输入) 连接资源。 query(输入) 要执行的 SQL 语句字符串。 -
返回值
成功返回结果资源,失败返回 false。
6.2.2.ux_query_params
-
功能
带参数执行 SQL 查询
-
函数
ux_query_params($connection, $query, $params) -
参数
表 ux_query_params 参数说明
名称 描述 connection(输入) 连接资源。 query(输入) 带 $1、$2 等占位符的 SQL 语句。 params(输入) 参数值数组,依次替换占位符。 -
返回值
成功返回结果资源,失败返回 false。
6.2.3.ux_prepare
-
功能
预处理 SQL 语句
-
函数
ux_prepare($connection, $stmtname, $query) -
参数
表 ux_prepare 参数说明
名称 描述 connection(输入) 连接资源。 stmtname(输入) 预处理语句名称。 query(输入) 带 $1、$2 等占位符的 SQL 语句。 -
返回值
成功返回预处理语句资源,失败返回 false。
6.2.4.ux_execute
-
功能
执行预处理语句
-
函数
ux_execute($connection, $stmtname, $params) -
参数
表 ux_execute 参数说明
名称 描述 connection(输入) 连接资源。 stmtname(输入) 要执行的预处理语句名称。 params(输入) 参数值数组,依次替换占位符。 -
返回值
成功返回结果资源,失败返回 false。
6.2.5.ux_send_query
-
功能
异步发送 SQL 查询
-
函数
ux_send_query($connection, $query) -
参数
表 ux_send_query 参数说明
名称 描述 connection(输入) 连接资源。 query(输入) 要异步执行的 SQL 语句。 -
返回值
发送成功返回 true,失败返回 false。
6.2.6.ux_send_query_params
-
功能
异步发送带参数查询
-
函数
ux_send_query_params($connection, $query, $params) -
参数
表 ux_send_query_params 参数说明
名称 描述 connection(输入) 连接资源。 query(输入) 带 $1、$2 占位符的 SQL 语句。 params(输入) 参数值数组。 -
返回值
发送成功返回 true,失败返回 false。
6.2.7.ux_send_prepare
-
功能
异步发送预处理请求
-
函数
ux_send_prepare($connection, $stmtname, $query) -
参数
表 ux_send_prepare 参数说明
名称 描述 connection(输入) 连接资源。 stmtname(输入) 预处理语句名称。 query(输入) 带占位符的 SQL 语句。 -
返回值
发送成功返回 true,失败返回 false。
6.2.8.ux_send_execute
-
功能
异步发送预处理执行请求
-
函数
ux_send_execute($connection, $stmtname, $params) -
参数
表 ux_send_execute 参数说明
名称 描述 connection(输入) 连接资源。 stmtname(输入) 预处理语句名称。 params(输入) 参数值数组。 -
返回值
发送成功返回 true,失败返回 false。
6.2.9.ux_cancel_query
-
功能
取消进行中的异步查询
-
函数
ux_cancel_query($connection) -
参数
表 ux_cancel_query 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
取消成功返回 true,失败返回 false。
6.3.uxsql·结果集接口
6.3.1.ux_fetch_result
-
功能
获取结果中指定行列的字段值
-
函数
ux_fetch_result($result, $row, $field) -
参数
表 ux_fetch_result 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(从 0 开始)。 field(输入) 列号或列名。 -
返回值
返回指定行列的字段值(字符串),行/列越界或值为 NULL 时返回 false。
6.3.2.ux_fetch_row
-
功能
以数字索引取下一行
-
函数
ux_fetch_row($result, $row) -
参数
表 ux_fetch_row 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(可选),缺省为下一行。 -
返回值
返回数字索引数组,无更多行返回 false。
6.3.3.ux_fetch_assoc
-
功能
以关联索引取下一行
-
函数
ux_fetch_assoc($result, $row) -
参数
表 ux_fetch_assoc 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(可选),缺省为下一行。 -
返回值
返回关联(字段名)索引数组,无更多行返回 false。
6.3.4.ux_fetch_array
-
功能
以数字+关联索引取下一行
-
函数
ux_fetch_array($result, $row, $result_type) -
参数
表 ux_fetch_array 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(可选),缺省为下一行。 result_type(输入) 结果类型(可选):PGSQL_ASSOC、PGSQL_NUM 或 PGSQL_BOTH。 -
返回值
返回数字与关联混合索引数组,无更多行返回 false。
6.3.5.ux_fetch_object
-
功能
取下一行并转为对象
-
函数
ux_fetch_object($result, $row, $class, $params) -
参数
表 ux_fetch_object 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(可选),缺省为下一行。 class(输入) 要实例化的类名(可选)。 params(输入) 类构造参数数组(可选)。 -
返回值
返回对象,无更多行返回 false。
6.3.6.ux_fetch_all
-
功能
获取全部结果行(数组)
-
函数
ux_fetch_all($result, $mode) -
参数
表 ux_fetch_all 参数说明
名称 描述 result(输入) 结果资源。 mode(输入) 结果类型(可选):PGSQL_ASSOC、PGSQL_NUM 或 PGSQL_BOTH。 -
返回值
返回包含全部结果行的数组,无结果返回空数组。
6.3.7.ux_fetch_all_columns
-
功能
获取指定列的全部值
-
函数
ux_fetch_all_columns($result, $field) -
参数
表 ux_fetch_all_columns 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号(从 0 开始)。 -
返回值
返回指定列全部值的数组。
6.3.8.ux_affected_rows
-
功能
获取受影响的行数
-
函数
ux_affected_rows($result) -
参数
表 ux_affected_rows 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
返回受影响的行数(int)。
6.3.9.ux_get_result
-
功能
获取异步查询的结果集
-
函数
ux_get_result($connection) -
参数
表 ux_get_result 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回异步查询的结果资源,暂无结果返回 false。
6.3.10.ux_result_seek
-
功能
移动结果集行指针
-
函数
ux_result_seek($result, $offset) -
参数
表 ux_result_seek 参数说明
名称 描述 result(输入) 结果资源。 offset(输入) 目标行号。 -
返回值
成功返回 true,失败返回 false。
6.3.11.ux_result_status
-
功能
获取结果集状态
-
函数
ux_result_status($result) -
参数
表 ux_result_status 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
返回结果状态:PGSQL_EMPTY_QUERY、PGSQL_COMMAND_OK、PGSQL_TUPLES_OK、PGSQL_COPY_OUT、PGSQL_COPY_IN、PGSQL_BAD_RESPONSE、PGSQL_NONFATAL_ERROR 或 PGSQL_FATAL_ERROR。
6.3.12.ux_free_result
-
功能
释放结果集内存
-
函数
ux_free_result($result) -
参数
表 ux_free_result 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
成功返回 true,失败返回 false。
6.3.13.ux_last_oid
-
功能
获取最后插入行的 OID
-
函数
ux_last_oid($result) -
参数
表 ux_last_oid 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
返回最后插入行的 OID(字符串或 int)。
6.3.14.ux_num_rows
-
功能
获取结果行数
-
函数
ux_num_rows($result) -
参数
表 ux_num_rows 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
返回结果行数(int)。
6.3.15.ux_num_fields
-
功能
获取结果列数
-
函数
ux_num_fields($result) -
参数
表 ux_num_fields 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
返回结果列数(int)。
6.3.16.ux_field_name
-
功能
获取列名
-
函数
ux_field_name($result, $field) -
参数
表 ux_field_name 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
返回列名字符串。
6.3.17.ux_field_num
-
功能
获取列序号
-
函数
ux_field_num($result, $field) -
参数
表 ux_field_num 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列名。 -
返回值
返回列序号(int)。
6.3.18.ux_field_size
-
功能
获取列数据存储大小
-
函数
ux_field_size($result, $field) -
参数
表 ux_field_size 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
返回列数据存储大小(int,-1 表示变长)。
6.3.19.ux_field_type
-
功能
获取列类型名
-
函数
ux_field_type($result, $field) -
参数
表 ux_field_type 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
返回列类型名字符串。
6.3.20.ux_field_type_oid
-
功能
获取列类型 OID
-
函数
ux_field_type_oid($result, $field) -
参数
表 ux_field_type_oid 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
返回列类型 OID(int)。
6.3.21.ux_field_prtlen
-
功能
获取列打印长度
-
函数
ux_field_prtlen($result, $row, $field) -
参数
表 ux_field_prtlen 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(可选)。 field(输入) 列号或列名。 -
返回值
返回列打印长度(int)。
6.3.22.ux_field_is_null
-
功能
判断列值是否为 NULL
-
函数
ux_field_is_null($result, $row, $field) -
参数
表 ux_field_is_null 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号(可选)。 field(输入) 列号或列名。 -
返回值
值为 NULL 返回 1,否则返回 0,出错返回 false。
6.3.23.ux_field_table
-
功能
获取列所属表信息
-
函数
ux_field_table($result, $field, $oid_only) -
参数
表 ux_field_table 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 oid_only(输入) 是否只返回 OID(可选):true 返回 OID,false 返回表名。 -
返回值
返回列所属表的表名或 OID。
6.4.uxsql·异步通知接口
6.4.1.ux_get_notify
-
功能
获取 LISTEN/NOTIFY 异步通知
-
函数
ux_get_notify($connection, $result_type) -
参数
表 ux_get_notify 参数说明
名称 描述 connection(输入) 连接资源。 result_type(输入) 结果类型(可选):PGSQL_ASSOC、PGSQL_NUM 或 PGSQL_BOTH。 -
返回值
返回含 message、pid 的通知数组,无通知返回 false。
6.4.2.ux_socket
-
功能
获取连接底层 socket 句柄
-
函数
ux_socket($connection) -
参数
表 ux_socket 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
成功返回底层 socket 资源,失败返回 false。
6.4.3.ux_consume_input
-
功能
读取服务器异步输入
-
函数
ux_consume_input($connection) -
参数
表 ux_consume_input 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
成功返回 true,出错返回 false。
6.4.4.ux_flush
-
功能
刷新输出缓冲区
-
函数
ux_flush($connection) -
参数
表 ux_flush 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
成功返回 true,失败返回 false。
6.4.5.ux_get_pid
-
功能
获取后端进程 PID
-
函数
ux_get_pid($connection) -
参数
表 ux_get_pid 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回后端进程 PID(int)。
6.5.uxsql·错误处理接口
6.5.1.ux_result_error
-
功能
获取结果集错误消息
-
函数
ux_result_error($result) -
参数
表 ux_result_error 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
返回错误消息字符串,无错误返回 false。
6.5.2.ux_result_error_field
-
功能
获取结果集错误的指定诊断字段
-
函数
ux_result_error_field($result, $fieldcode) -
参数
表 ux_result_error_field 参数说明
名称 描述 result(输入) 结果资源。 fieldcode(输入) 诊断字段码,如 PGSQL_DIAG_SEVERITY、PGSQL_DIAG_MESSAGE_PRIMARY 等。 -
返回值
返回诊断字段值,字段不存在返回 false。
6.5.3.ux_last_error
-
功能
获取最近一次错误消息
-
函数
ux_last_error($connection) -
参数
表 ux_last_error 参数说明
名称 描述 connection(输入) 连接资源(可选)。 -
返回值
返回最近一次错误消息字符串。
6.5.4.ux_last_notice
-
功能
获取最近一次 NOTICE 消息
-
函数
ux_last_notice($connection) -
参数
表 ux_last_notice 参数说明
名称 描述 connection(输入) 连接资源。 -
返回值
返回最近一次 NOTICE 消息字符串。
6.5.5.ux_set_error_verbosity
-
功能
设置错误报告详细度
-
函数
ux_set_error_verbosity($connection, $verbosity) -
参数
表 ux_set_error_verbosity 参数说明
名称 描述 connection(输入) 连接资源。 verbosity(输入) 详细度:PGSQL_ERRORS_TERSE、PGSQL_ERRORS_DEFAULT 或 PGSQL_ERRORS_VERBOSE。 -
返回值
返回设置前的详细度。
6.6.uxsql·COPY 接口
6.6.1.ux_put_line
-
功能
向 COPY 操作写入一行数据
-
函数
ux_put_line($connection, $data) -
参数
表 ux_put_line 参数说明
名称 描述 connection(输入) 连接资源。 data(输入) 要写入 COPY 的一行数据。 -
返回值
成功返回 true,失败返回 false。
6.6.2.ux_end_copy
-
功能
结束 COPY 操作并同步
-
函数
ux_end_copy($connection) -
参数
表 ux_end_copy 参数说明
名称 描述 connection(输入) 连接资源(可选)。 -
返回值
成功返回 true,失败返回 false。
6.6.3.ux_copy_to
-
功能
将表数据导出到数组(COPY)
-
函数
ux_copy_to($connection, $table, $delimiter, $null_as) -
参数
表 ux_copy_to 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 要导出的表名。 delimiter(输入) 字段分隔符(可选)。 null_as(输入) NULL 值的文本表示(可选)。 -
返回值
返回数据行数组,失败返回 false。
6.6.4.ux_copy_from
-
功能
将数组数据导入表(COPY)
-
函数
ux_copy_from($connection, $table, $rows, $delimiter, $null_as) -
参数
表 ux_copy_from 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 目标表名。 rows(输入) 数据行数组。 delimiter(输入) 字段分隔符(可选)。 null_as(输入) NULL 值的文本表示(可选)。 -
返回值
成功返回 true,失败返回 false。
6.7.uxsql·大对象(LOB)接口
6.7.1.ux_lo_create
-
功能
创建大对象
-
函数
ux_lo_create($connection, $oid) -
参数
表 ux_lo_create 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID(可选),缺省由系统自动分配。 -
返回值
成功返回大对象 OID,失败返回 false。
6.7.2.ux_lo_unlink
-
功能
删除大对象
-
函数
ux_lo_unlink($connection, $oid) -
参数
表 ux_lo_unlink 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID。 -
返回值
成功返回 true,失败返回 false。
6.7.3.ux_lo_open
-
功能
打开大对象
-
函数
ux_lo_open($connection, $oid, $mode) -
参数
表 ux_lo_open 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID。 mode(输入) 访问模式:"r"(只读)、"w"(只写)或 "rw"(读写)。 -
返回值
成功返回大对象资源,失败返回 false。
6.7.4.ux_lo_close
-
功能
关闭大对象
-
函数
ux_lo_close($lob) -
参数
表 ux_lo_close 参数说明
名称 描述 lob(输入) 大对象资源。 -
返回值
成功返回 true,失败返回 false。
6.7.5.ux_lo_read
-
功能
读取大对象数据
-
函数
ux_lo_read($lob, $len) -
参数
表 ux_lo_read 参数说明
名称 描述 lob(输入) 大对象资源。 len(输入) 要读取的字节数。 -
返回值
返回读取的数据字符串,出错返回 false。
6.7.6.ux_lo_write
-
功能
写入大对象数据
-
函数
ux_lo_write($lob, $data) -
参数
表 ux_lo_write 参数说明
名称 描述 lob(输入) 大对象资源。 data(输入) 要写入的数据。 -
返回值
返回写入的字节数,出错返回 false。
6.7.7.ux_lo_read_all
-
功能
读取整个大对象
-
函数
ux_lo_read_all($lob) -
参数
表 ux_lo_read_all 参数说明
名称 描述 lob(输入) 大对象资源。 -
返回值
返回整个大对象的内容字符串。
6.7.8.ux_lo_import
-
功能
从文件导入大对象
-
函数
ux_lo_import($connection, $pathname, $oid) -
参数
表 ux_lo_import 参数说明
名称 描述 connection(输入) 连接资源。 pathname(输入) 要导入的文件路径。 oid(输入) 目标大对象 OID(可选)。 -
返回值
成功返回大对象 OID,失败返回 false。
6.7.9.ux_lo_export
-
功能
导出大对象到文件
-
函数
ux_lo_export($connection, $oid, $pathname) -
参数
表 ux_lo_export 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID。 pathname(输入) 导出文件路径。 -
返回值
成功返回 true,失败返回 false。
6.7.10.ux_lo_seek
-
功能
定位大对象读写偏移
-
函数
ux_lo_seek($lob, $offset, $whence) -
参数
表 ux_lo_seek 参数说明
名称 描述 lob(输入) 大对象资源。 offset(输入) 偏移量。 whence(输入) 基准位置(可选):PGSQL_SEEK_SET、PGSQL_SEEK_CUR 或 PGSQL_SEEK_END。 -
返回值
成功返回 true,失败返回 false。
6.7.11.ux_lo_tell
-
功能
获取大对象当前偏移
-
函数
ux_lo_tell($lob) -
参数
表 ux_lo_tell 参数说明
名称 描述 lob(输入) 大对象资源。 -
返回值
返回当前偏移量(int)。
6.7.12.ux_lo_truncate
-
功能
截断大对象
-
函数
ux_lo_truncate($lob, $size) -
参数
表 ux_lo_truncate 参数说明
名称 描述 lob(输入) 大对象资源。 size(输入) 截断后的字节数。 -
返回值
成功返回 true,失败返回 false。
6.8.uxsql·转义与编码接口
6.8.1.ux_escape_string
-
功能
转义字符串(用于 SQL 文本)
-
函数
ux_escape_string($connection, $data) -
参数
表 ux_escape_string 参数说明
名称 描述 connection(输入) 连接资源(可选)。 data(输入) 要转义的字符串。 -
返回值
返回转义后的字符串。
6.8.2.ux_escape_bytea
-
功能
转义二进制数据为可插入 SQL 的格式
-
函数
ux_escape_bytea($connection, $data) -
参数
表 ux_escape_bytea 参数说明
名称 描述 connection(输入) 连接资源(可选)。 data(输入) 要转义的二进制数据。 -
返回值
返回转义后的 bytea 字符串。
6.8.3.ux_unescape_bytea
-
功能
将转义后的 bytea 数据还原
-
函数
ux_unescape_bytea($data) -
参数
表 ux_unescape_bytea 参数说明
名称 描述 data(输入) 转义后的 bytea 字符串。 -
返回值
返回还原的二进制数据。
6.8.4.ux_escape_literal
-
功能
转义 SQL 字面量
-
函数
ux_escape_literal($connection, $data) -
参数
表 ux_escape_literal 参数说明
名称 描述 connection(输入) 连接资源(可选)。 data(输入) 要转义的 SQL 字面量。 -
返回值
返回转义并加引号的 SQL 字面量。
6.8.5.ux_escape_identifier
-
功能
转义 SQL 标识符
-
函数
ux_escape_identifier($connection, $data) -
参数
表 ux_escape_identifier 参数说明
名称 描述 connection(输入) 连接资源(可选)。 data(输入) 要转义的 SQL 标识符。 -
返回值
返回转义并加引号的 SQL 标识符。
6.8.6.ux_client_encoding
-
功能
获取客户端字符编码
-
函数
ux_client_encoding($connection) -
参数
表 ux_client_encoding 参数说明
名称 描述 connection(输入) 连接资源(可选)。 -
返回值
返回客户端编码字符串。
6.8.7.ux_set_client_encoding
-
功能
设置客户端字符编码
-
函数
ux_set_client_encoding($connection, $encoding) -
参数
表 ux_set_client_encoding 参数说明
名称 描述 connection(输入) 连接资源(可选)。 encoding(输入) 编码名,如 UTF8。 -
返回值
成功返回 0,失败返回 -1。
6.9.uxsql·调试接口
6.9.1.ux_trace
-
功能
开启 SQL 跟踪输出
-
函数
ux_trace($file, $mode, $connection) -
参数
表 ux_trace 参数说明
名称 描述 file(输入) 跟踪输出文件路径。 mode(输入) 写入模式(可选):追加或覆盖。 connection(输入) 连接资源(可选)。 -
返回值
成功返回 true,失败返回 false。
6.9.2.ux_untrace
-
功能
关闭 SQL 跟踪输出
-
函数
ux_untrace($connection) -
参数
表 ux_untrace 参数说明
名称 描述 connection(输入) 连接资源(可选)。 -
返回值
成功返回 true。
6.10.uxsql·元数据/CRUD辅助接口
6.10.1.ux_meta_data
-
功能
获取表的元数据信息
-
函数
ux_meta_data($connection, $table, $extended) -
参数
表 ux_meta_data 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 表名。 extended(输入) 是否返回扩展信息(可选)。 -
返回值
返回表元数据数组,失败返回 false。
6.10.2.ux_convert
-
功能
将数组值按字段类型转换
-
函数
ux_convert($connection, $table, $values) -
参数
表 ux_convert 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 表名。 values(输入) 要转换的值数组。 -
返回值
返回按字段类型转换后的值数组。
6.10.3.ux_insert
-
功能
由数组生成并执行 INSERT
-
函数
ux_insert($connection, $table, $values) -
参数
表 ux_insert 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 表名。 values(输入) 列名到值的关联数组。 -
返回值
成功返回结果资源,失败返回 false。
6.10.4.ux_update
-
功能
由数组生成并执行 UPDATE
-
函数
ux_update($connection, $table, $values, $condition) -
参数
表 ux_update 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 表名。 values(输入) 列名到值的关联数组。 condition(输入) 更新条件关联数组(列名 => 值)。 -
返回值
成功返回 true,失败返回 false。
6.10.5.ux_delete
-
功能
由数组条件生成并执行 DELETE
-
函数
ux_delete($connection, $table, $condition) -
参数
表 ux_delete 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 表名。 condition(输入) 删除条件关联数组(列名 => 值)。 -
返回值
成功返回 true,失败返回 false。
6.10.6.ux_select
-
功能
由数组条件生成并执行 SELECT
-
函数
ux_select($connection, $table, $condition) -
参数
表 ux_select 参数说明
名称 描述 connection(输入) 连接资源。 table(输入) 表名。 condition(输入) 查询条件关联数组(列名 => 值,可选)。 -
返回值
成功返回行数组,失败返回 false。
6.11.uxsql·兼容别名接口
6.11.1.ux_exec
-
功能
执行查询(旧版别名)
-
注意
ux_query 别名
-
函数
ux_exec($connection, $query) -
参数
表 ux_exec 参数说明
名称 描述 connection(输入) 连接资源。 query(输入) 要执行的 SQL 语句。 -
返回值
等价于 ux_query:成功返回结果资源,失败返回 false。
6.11.2.ux_getlastoid
-
功能
获取最后插入 OID(旧版别名)
-
注意
ux_last_oid 别名
-
函数
ux_getlastoid($result) -
参数
表 ux_getlastoid 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
等价于 ux_last_oid:返回最后插入行的 OID。
6.11.3.ux_cmdtuples
-
功能
获取受影响行数(旧版别名)
-
注意
ux_affected_rows 别名
-
函数
ux_cmdtuples($result) -
参数
表 ux_cmdtuples 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
等价于 ux_affected_rows:返回受影响的行数(int)。
6.11.4.ux_errormessage
-
功能
获取最近错误(旧版别名)
-
注意
ux_last_error 别名
-
函数
ux_errormessage($connection) -
参数
表 ux_errormessage 参数说明
名称 描述 connection(输入) 连接资源(可选)。 -
返回值
等价于 ux_last_error:返回最近一次错误消息字符串。
6.11.5.ux_numrows
-
功能
获取结果行数(旧版别名)
-
注意
ux_num_rows 别名
-
函数
ux_numrows($result) -
参数
表 ux_numrows 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
等价于 ux_num_rows:返回结果行数(int)。
6.11.6.ux_numfields
-
功能
获取结果列数(旧版别名)
-
注意
ux_num_fields 别名
-
函数
ux_numfields($result) -
参数
表 ux_numfields 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
等价于 ux_num_fields:返回结果列数(int)。
6.11.7.ux_fieldname
-
功能
获取列名(旧版别名)
-
注意
ux_field_name 别名
-
函数
ux_fieldname($result, $field) -
参数
表 ux_fieldname 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
等价于 ux_field_name:返回列名字符串。
6.11.8.ux_fieldsize
-
功能
获取列大小(旧版别名)
-
注意
ux_field_size 别名
-
函数
ux_fieldsize($result, $field) -
参数
表 ux_fieldsize 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
等价于 ux_field_size:返回列数据存储大小(int)。
6.11.9.ux_fieldtype
-
功能
获取列类型(旧版别名)
-
注意
ux_field_type 别名
-
函数
ux_fieldtype($result, $field) -
参数
表 ux_fieldtype 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列号。 -
返回值
等价于 ux_field_type:返回列类型名字符串。
6.11.10.ux_fieldnum
-
功能
获取列序号(旧版别名)
-
注意
ux_field_num 别名
-
函数
ux_fieldnum($result, $field) -
参数
表 ux_fieldnum 参数说明
名称 描述 result(输入) 结果资源。 field(输入) 列名。 -
返回值
等价于 ux_field_num:返回列序号(int)。
6.11.11.ux_fieldprtlen
-
功能
获取列打印长度(旧版别名)
-
注意
ux_field_prtlen 别名
-
函数
ux_fieldprtlen($result, $row, $field) -
参数
表 ux_fieldprtlen 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号。 field(输入) 列号或列名。 -
返回值
等价于 ux_field_prtlen:返回列打印长度(int)。
6.11.12.ux_fieldisnull
-
功能
判断列是否 NULL(旧版别名)
-
注意
ux_field_is_null 别名
-
函数
ux_fieldisnull($result, $row, $field) -
参数
表 ux_fieldisnull 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号。 field(输入) 列号或列名。 -
返回值
等价于 ux_field_is_null:值为 NULL 返回 1,否则返回 0。
6.11.13.ux_freeresult
-
功能
释放结果集(旧版别名)
-
注意
ux_free_result 别名
-
函数
ux_freeresult($result) -
参数
表 ux_freeresult 参数说明
名称 描述 result(输入) 结果资源。 -
返回值
等价于 ux_free_result:成功返回 true。
6.11.14.ux_result
-
功能
取结果字段值(旧版别名)
-
注意
ux_fetch_result 别名
-
函数
ux_result($result, $row, $field) -
参数
表 ux_result 参数说明
名称 描述 result(输入) 结果资源。 row(输入) 行号。 field(输入) 列号或列名。 -
返回值
等价于 ux_fetch_result:返回指定行列的字段值。
6.11.15.ux_loreadall
-
功能
读取整个大对象(旧版别名)
-
注意
ux_lo_read_all 别名
-
函数
ux_loreadall($lob) -
参数
表 ux_loreadall 参数说明
名称 描述 lob(输入) 大对象资源。 -
返回值
等价于 ux_lo_read_all:返回整个大对象的内容字符串。
6.11.16.ux_locreate
-
功能
创建大对象(旧版别名)
-
注意
ux_lo_create 别名
-
函数
ux_locreate($connection, $oid) -
参数
表 ux_locreate 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID(可选)。 -
返回值
等价于 ux_lo_create:成功返回大对象 OID。
6.11.17.ux_lounlink
-
功能
删除大对象(旧版别名)
-
注意
ux_lo_unlink 别名
-
函数
ux_lounlink($connection, $oid) -
参数
表 ux_lounlink 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID。 -
返回值
等价于 ux_lo_unlink:成功返回 true。
6.11.18.ux_loopen
-
功能
打开大对象(旧版别名)
-
注意
ux_lo_open 别名
-
函数
ux_loopen($connection, $oid, $mode) -
参数
表 ux_loopen 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID。 mode(输入) 访问模式:"r"(只读)、"w"(只写)或 "rw"(读写)。 -
返回值
等价于 ux_lo_open:成功返回大对象资源。
6.11.19.ux_loclose
-
功能
关闭大对象(旧版别名)
-
注意
ux_lo_close 别名
-
函数
ux_loclose($lob) -
参数
表 ux_loclose 参数说明
名称 描述 lob(输入) 大对象资源。 -
返回值
等价于 ux_lo_close:成功返回 true。
6.11.20.ux_loread
-
功能
读取大对象(旧版别名)
-
注意
ux_lo_read 别名
-
函数
ux_loread($lob, $len) -
参数
表 ux_loread 参数说明
名称 描述 lob(输入) 大对象资源。 len(输入) 要读取的字节数。 -
返回值
等价于 ux_lo_read:返回读取的数据字符串。
6.11.21.ux_lowrite
-
功能
写入大对象(旧版别名)
-
注意
ux_lo_write 别名
-
函数
ux_lowrite($lob, $data) -
参数
表 ux_lowrite 参数说明
名称 描述 lob(输入) 大对象资源。 data(输入) 要写入的数据。 -
返回值
等价于 ux_lo_write:返回写入的字节数。
6.11.22.ux_loimport
-
功能
导入大对象(旧版别名)
-
注意
ux_lo_import 别名
-
函数
ux_loimport($connection, $pathname, $oid) -
参数
表 ux_loimport 参数说明
名称 描述 connection(输入) 连接资源。 pathname(输入) 要导入的文件路径。 oid(输入) 目标大对象 OID(可选)。 -
返回值
等价于 ux_lo_import:成功返回大对象 OID。
6.11.23.ux_loexport
-
功能
导出大对象(旧版别名)
-
注意
ux_lo_export 别名
-
函数
ux_loexport($connection, $oid, $pathname) -
参数
表 ux_loexport 参数说明
名称 描述 connection(输入) 连接资源。 oid(输入) 大对象 OID。 pathname(输入) 导出文件路径。 -
返回值
等价于 ux_lo_export:成功返回 true。
6.11.24.ux_clientencoding
-
功能
获取客户端编码(旧版别名)
-
注意
ux_client_encoding 别名
-
函数
ux_clientencoding($connection) -
参数
表 ux_clientencoding 参数说明
名称 描述 connection(输入) 连接资源(可选)。 -
返回值
等价于 ux_client_encoding:返回客户端编码字符串。
6.11.25.ux_setclientencoding
-
功能
设置客户端编码(旧版别名)
-
注意
ux_set_client_encoding 别名
-
函数
ux_setclientencoding($connection, $encoding) -
参数
表 ux_setclientencoding 参数说明
名称 描述 connection(输入) 连接资源(可选)。 encoding(输入) 编码名,如 UTF8。 -
返回值
等价于 ux_set_client_encoding:成功返回 0,失败返回 -1。
6.12.pdo_uxsql·PDO 通用接口
6.12.1.PDO::__construct
-
功能
建立数据库连接(DSN 连接串,用户名/密码可分离传入)
-
函数
new PDO($dsn, $username, $password, $options) -
参数
表 PDO::__construct 参数说明
名称 描述 dsn(输入) DSN 连接串,如 "pgsql:host=... port=... dbname=..."。 username(输入) 用户名(可选)。 password(输入) 密码(可选)。 options(输入) 连接选项数组(可选)。 -
返回值
无(构造函数),连接失败抛出 PDOException。
6.12.2.PDO::prepare
-
功能
预处理 SQL 语句(支持原生/模拟预处理)
-
函数
PDO::prepare($query, $options) -
参数
表 PDO::prepare 参数说明
名称 描述 query(输入) 要预处理的 SQL 语句。 options(输入) 驱动选项数组(可选)。 -
返回值
成功返回 PDOStatement 对象,失败返回 false 或抛出 PDOException。
6.12.3.PDO::exec
-
功能
执行 SQL 并返回受影响行数
-
函数
PDO::exec($query) -
参数
表 PDO::exec 参数说明
名称 描述 query(输入) 要执行的 SQL 语句。 -
返回值
返回受影响的行数(int)。
6.12.4.PDO::query
-
功能
执行 SQL 并返回结果集
-
函数
PDO::query($query, $mode, $args) -
参数
表 PDO::query 参数说明
名称 描述 query(输入) 要执行的 SQL 语句。 mode(输入) fetch 模式(可选),如 PDO::FETCH_ASSOC。 args(输入) fetch 模式参数(可选)。 -
返回值
成功返回 PDOStatement 对象,失败返回 false。
6.12.5.PDO::quote
-
功能
转义并引用字符串
-
函数
PDO::quote($string, $type) -
参数
表 PDO::quote 参数说明
名称 描述 string(输入) 要转义的字符串。 type(输入) 参数类型(可选),如 PDO::PARAM_STR。 -
返回值
返回转义并加引号的字符串,失败返回 false。
6.12.6.PDO::beginTransaction
-
功能
开启事务
-
函数
PDO::beginTransaction() -
参数:无。
-
返回值
成功返回 true,失败抛出 PDOException。
6.12.7.PDO::commit
-
功能
提交事务
-
函数
PDO::commit() -
参数:无。
-
返回值
成功返回 true,失败抛出 PDOException。
6.12.8.PDO::rollBack
-
功能
回滚事务
-
函数
PDO::rollBack() -
参数:无。
-
返回值
成功返回 true,失败抛出 PDOException。
6.12.9.PDO::inTransaction
-
功能
检查是否处于事务中
-
函数
PDO::inTransaction() -
参数:无。
-
返回值
处于事务中返回 true,否则返回 false。
6.12.10.PDO::lastInsertId
-
功能
获取最后插入的 ID
-
函数
PDO::lastInsertId($name) -
参数
表 PDO::lastInsertId 参数说明
名称 描述 name(输入) 序列名(可选)。 -
返回值
返回最后插入的 ID(字符串)。
6.12.11.PDO::errorCode
-
功能
获取最近错误的 SQLSTATE
-
函数
PDO::errorCode() -
参数:无。
-
返回值
返回 SQLSTATE 码(字符串),无错误返回 null。
6.12.12.PDO::errorInfo
-
功能
获取最近错误的详细信息
-
函数
PDO::errorInfo() -
参数:无。
-
返回值
返回 [SQLSTATE, 驱动错误码, 错误消息] 数组。
6.12.13.PDO::setAttribute
-
功能
设置连接属性(支持 PDO::ATTR_EMULATE_PREPARES 及专有属性 PDO::UXSQL_ATTR_DISABLE_PREPARES)
-
函数
PDO::setAttribute($attribute, $value) -
参数
表 PDO::setAttribute 参数说明
名称 描述 attribute(输入) 连接属性,如 PDO::ATTR_EMULATE_PREPARES、PDO::UXSQL_ATTR_DISABLE_PREPARES。 value(输入) 属性值。 -
返回值
成功返回 true。
6.12.14.PDO::getAttribute
-
功能
获取连接属性(客户端/服务器版本、连接状态、服务器信息等)
-
函数
PDO::getAttribute($attribute) -
参数
表 PDO::getAttribute 参数说明
名称 描述 attribute(输入) 连接属性。 -
返回值
返回属性值。
6.13.pdo_uxsql·PDOStatement 通用接口
6.13.1.PDOStatement::execute
-
功能
执行预处理语句
-
函数
PDOStatement::execute($params) -
参数
表 PDOStatement::execute 参数说明
名称 描述 params(输入) 参数值数组(可选)。 -
返回值
成功返回 true,失败返回 false。
6.13.2.PDOStatement::bindParam
-
功能
绑定参数(引用方式)
-
函数
PDOStatement::bindParam($param, $var, $type, $maxLength, $driverOptions) -
参数
表 PDOStatement::bindParam 参数说明
名称 描述 param(输入) 参数标识(:name 或位置号)。 var(输入/输出) 要绑定的变量(引用传递)。 type(输入) 数据类型(可选),如 PDO::PARAM_INT。 maxLength(输入) 数据长度(可选)。 driverOptions(输入) 驱动选项(可选)。 -
返回值
成功返回 true。
6.13.3.PDOStatement::bindValue
-
功能
绑定参数(值方式)
-
函数
PDOStatement::bindValue($param, $value, $type) -
参数
表 PDOStatement::bindValue 参数说明
名称 描述 param(输入) 参数标识(:name 或位置号)。 value(输入) 要绑定的值。 type(输入) 数据类型(可选)。 -
返回值
成功返回 true。
6.13.4.PDOStatement::fetch
-
功能
取下一行
-
函数
PDOStatement::fetch($mode) -
参数
表 PDOStatement::fetch 参数说明
名称 描述 mode(输入) fetch 模式(可选),如 PDO::FETCH_ASSOC。 -
返回值
返回下一行,无更多行返回 false。
6.13.5.PDOStatement::fetchAll
-
功能
获取全部结果行
-
函数
PDOStatement::fetchAll($mode) -
参数
表 PDOStatement::fetchAll 参数说明
名称 描述 mode(输入) fetch 模式(可选)。 -
返回值
返回全部结果行数组。
6.13.6.PDOStatement::fetchColumn
-
功能
取下一行的单列值
-
函数
PDOStatement::fetchColumn($column) -
参数
表 PDOStatement::fetchColumn 参数说明
名称 描述 column(输入) 列号(可选,默认 0)。 -
返回值
返回下一行的单列值,无更多行返回 false。
6.13.7.PDOStatement::fetchObject
-
功能
取下一行并转为对象
-
函数
PDOStatement::fetchObject($class, $args) -
参数
表 PDOStatement::fetchObject 参数说明
名称 描述 class(输入) 要实例化的类名(可选)。 args(输入) 构造参数数组(可选)。 -
返回值
返回对象,无更多行返回 false。
6.13.8.PDOStatement::getColumnMeta
-
功能
获取结果列元数据
-
函数
PDOStatement::getColumnMeta($column) -
参数
表 PDOStatement::getColumnMeta 参数说明
名称 描述 column(输入) 列号。 -
返回值
返回列元数据数组,失败返回 false。
6.13.9.PDOStatement::columnCount
-
功能
获取结果列数
-
函数
PDOStatement::columnCount() -
参数:无。
-
返回值
返回结果列数(int)。
6.13.10.PDOStatement::rowCount
-
功能
获取受影响行数
-
函数
PDOStatement::rowCount() -
参数:无。
-
返回值
返回受影响的行数(int)。
6.13.11.PDOStatement::closeCursor
-
功能
关闭游标并释放资源
-
函数
PDOStatement::closeCursor() -
参数:无。
-
返回值
成功返回 true。
6.13.12.PDOStatement::setFetchMode
-
功能
设置取行模式
-
函数
PDOStatement::setFetchMode($mode, $args) -
参数
表 PDOStatement::setFetchMode 参数说明
名称 描述 mode(输入) fetch 模式,如 PDO::FETCH_ASSOC。 args(输入) 模式参数(可选)。 -
返回值
成功返回 true。
6.13.13.PDOStatement::bindColumn
-
功能
绑定结果列到变量
-
函数
PDOStatement::bindColumn($column, $var, $type, $maxLength, $driverOptions) -
参数
表 PDOStatement::bindColumn 参数说明
名称 描述 column(输入) 列号或列名。 var(输入/输出) 要绑定的变量(引用传递)。 type(输入) 数据类型(可选)。 maxLength(输入) 数据长度(可选)。 driverOptions(输入) 驱动选项(可选)。 -
返回值
成功返回 true。
6.13.14.PDOStatement::errorCode
-
功能
获取语句级错误 SQLSTATE
-
函数
PDOStatement::errorCode() -
参数:无。
-
返回值
返回 SQLSTATE 码(字符串)。
6.13.15.PDOStatement::errorInfo
-
功能
获取语句级错误信息
-
函数
PDOStatement::errorInfo() -
参数:无。
-
返回值
返回 [SQLSTATE, 驱动错误码, 错误消息] 数组。
6.13.16.PDOStatement::setAttribute
-
功能
设置语句级属性
-
注意
不支持
-
函数
PDOStatement::setAttribute($attribute, $value) -
参数
表 PDOStatement::setAttribute 参数说明
名称 描述 attribute(输入) 语句级属性。 value(输入) 属性值。 -
返回值
成功返回 true。
6.13.17.PDOStatement::getAttribute
-
功能
获取语句级属性
-
注意
不支持
-
函数
PDOStatement::getAttribute($attribute) -
参数
表 PDOStatement::getAttribute 参数说明
名称 描述 attribute(输入) 语句级属性。 -
返回值
返回属性值。
6.13.18.PDOStatement::nextRowset
-
功能
推进到下一结果集
-
注意
不支持
-
函数
PDOStatement::nextRowset() -
参数:无。
-
返回值
成功推进到下一结果集返回 true,无更多结果集返回 false。
6.14.pdo_uxsql·UXDB 专有接口
6.14.1.PDO::uxsqlLOBCreate
-
功能
创建大对象
-
注意
专有接口
-
函数
PDO::uxsqlLOBCreate($oid) -
参数
表 PDO::uxsqlLOBCreate 参数说明
名称 描述 oid(输入) 大对象 OID(可选)。 -
返回值
成功返回大对象 OID,失败返回 false。
6.14.2.PDO::uxsqlLOBOpen
-
功能
打开大对象
-
注意
专有接口
-
函数
PDO::uxsqlLOBOpen($oid, $mode) -
参数
表 PDO::uxsqlLOBOpen 参数说明
名称 描述 oid(输入) 大对象 OID。 mode(输入) 访问模式(可选):"r"(只读)、"w"(只写)或 "rw"(读写)。 -
返回值
成功返回大对象资源,失败返回 false。
6.14.3.PDO::uxsqlLOBUnlink
-
功能
删除大对象
-
注意
专有接口
-
函数
PDO::uxsqlLOBUnlink($oid) -
参数
表 PDO::uxsqlLOBUnlink 参数说明
名称 描述 oid(输入) 大对象 OID。 -
返回值
成功返回 true,失败返回 false。
6.14.4.PDO::uxsqlCopyFromArray
-
功能
从数组 COPY 导入表数据
-
注意
专有接口
-
函数
PDO::uxsqlCopyFromArray($table, $rows, $delimiter, $nullAs) -
参数
表 PDO::uxsqlCopyFromArray 参数说明
名称 描述 table(输入) 目标表名。 rows(输入) 数据行数组。 delimiter(输入) 字段分隔符(可选)。 nullAs(输入) NULL 值的文本表示(可选)。 -
返回值
成功返回 true,失败返回 false。
6.14.5.PDO::uxsqlCopyFromFile
-
功能
从文件 COPY 导入表数据
-
注意
专有接口
-
函数
PDO::uxsqlCopyFromFile($table, $file, $delimiter, $nullAs) -
参数
表 PDO::uxsqlCopyFromFile 参数说明
名称 描述 table(输入) 目标表名。 file(输入) 数据文件路径。 delimiter(输入) 字段分隔符(可选)。 nullAs(输入) NULL 值的文本表示(可选)。 -
返回值
成功返回 true,失败返回 false。
6.14.6.PDO::uxsqlCopyToArray
-
功能
COPY 导出表数据到数组
-
注意
专有接口
-
函数
PDO::uxsqlCopyToArray($table, $delimiter, $nullAs) -
参数
表 PDO::uxsqlCopyToArray 参数说明
名称 描述 table(输入) 要导出的表名。 delimiter(输入) 字段分隔符(可选)。 nullAs(输入) NULL 值的文本表示(可选)。 -
返回值
返回数据行数组,失败返回 false。
6.14.7.PDO::uxsqlCopyToFile
-
功能
COPY 导出表数据到文件
-
注意
专有接口
-
函数
PDO::uxsqlCopyToFile($table, $file, $delimiter, $nullAs) -
参数
表 PDO::uxsqlCopyToFile 参数说明
名称 描述 table(输入) 要导出的表名。 file(输入) 导出文件路径。 delimiter(输入) 字段分隔符(可选)。 nullAs(输入) NULL 值的文本表示(可选)。 -
返回值
成功返回 true,失败返回 false。
6.14.8.PDO::uxsqlGetNotify
-
功能
获取 LISTEN/NOTIFY 异步通知
-
注意
专有接口
-
函数
PDO::uxsqlGetNotify() -
参数:无。
-
返回值
返回含 channel、payload、pid 的通知数组,无通知返回 false。
6.14.9.PDO::uxsqlGetPid
-
功能
获取后端进程 PID
-
注意
专有接口
-
函数
PDO::uxsqlGetPid() -
参数:无。
-
返回值
返回后端进程 PID(int)。