PHP8 db2_get_option

2024-04-07 10:23 更新

(PECL ibm_db2 >= 1.6.0)

db2_get_option — 检索语句资源或连接资源的选项值

说明

db2_get_option(resource $resource, string $option): string|false

检索语句资源的指定选项值的值 或连接资源。

参数 

resource

从 db2_prepare() 返回的有效语句资源或从 () 返回的有效连接资源 从 db2_connect() 或 db2_pconnect() 返回。

option

有效的语句或连接选项。提供以下新选项 从ibm_db2版本 1.6.0 开始。它们提供有用的跟踪信息 可以在执行期间使用 db2_get_option() 设置。

注意

早期版本的 ibm_db2 不支持这些新选项。

设置每个选项中的值时,某些服务器可能无法处理 提供的整个长度,可能会截断该值。

确保正确转换每个选项中指定的数据 传输到主机系统时,仅使用字符 A 到 Z, 0 到 9,以及下划线 (_) 或句点 (.)。

userid

SQL_ATTR_INFO_USERID- 指向以 null 结尾的指针 用于标识发送到主机的客户端用户 ID 的字符串 使用 DB2 Connect 时的数据库服务器。

注意

DB2 for z/OS 和 OS/390 服务器最多支持 16 个字符的长度。 此 user-id 不要与身份验证 user-id 混淆,它用于 仅用于识别目的,不用于任何授权。

acctstr

SQL_ATTR_INFO_ACCTSTR- 指向以 null 结尾的指针 用于标识发送到 使用 DB2 Connect 时的主机数据库服务器。

注意

DB2 for z/OS 和 OS/390 服务器最多支持 200 个字符的长度。

applname

SQL_ATTR_INFO_APPLNAME- 指向以 null 结尾的指针 用于标识发送到 使用 DB2 Connect 时的主机数据库服务器。

注意

DB2 for z/OS 和 OS/390 服务器最多支持 32 个字符的长度。

wrkstnname

SQL_ATTR_INFO_WRKSTNNAME- 指向以 null 结尾的指针 用于标识发送到 使用 DB2 Connect 时的主机数据库服务器。

注意

DB2 for z/OS 和 OS/390 服务器最多支持 18 个字符的长度。

下表指定了与哪些选项兼容 可用资源类型:

资源参数矩阵
钥匙价值资源类型
  连接陈述结果集
乌塞里德SQL_ATTR_INFO_USERIDXX-
acctstrSQL_ATTR_INFO_ACCTSTRXX-
ApplNameSQL_ATTR_INFO_APPLNAMEXX-
wrkstnnameSQL_ATTR_INFO_WRKSTNNAMEXX-

返回值 

返回成功时提供的连接属性的当前设置 或者在失败时返回 false.

示例 

示例 #1 通过连接资源设置和检索参数

<?php
/* Database Connection Parameters */
$database = 'SAMPLE';
$user     = 'db2inst1';
$password = 'ibmdb2';

/* Obtain Connection Resource */
$conn = db2_connect($database, $user, $password);

echo "Client attributes passed through connection string:\n";

/* Create the associative options array with valid key-value pairs */
/* Assign the attributes through connection string */
/* Access the options specified */
$options1 = array('userid' => 'db2inst1');
$conn1 = db2_connect($database, $user, $password, $options1);
$val = db2_get_option($conn1, 'userid');
echo $val . "\n";

$options2 = array('acctstr' => 'account');
$conn2 = db2_connect($database, $user, $password, $options2);
$val = db2_get_option($conn2, 'acctstr');
echo $val . "\n";

$options3 = array('applname' => 'myapp');
$conn3 = db2_connect($database, $user, $password, $options3);
$val = db2_get_option($conn3, 'applname');
echo $val . "\n";

$options4 = array('wrkstnname' => 'workstation');
$conn4 = db2_connect($database, $user, $password, $options4);
$val = db2_get_option($conn4, 'wrkstnname');
echo $val . "\n";

echo "Client attributes passed post-connection:\n";

/* Create the associative options array with valid key-value pairs */
/* Assign the attributes after a connection is made */
/* Access the options specified */
$options5 = array('userid' => 'db2inst1');
$conn5 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn5, $options5, 1);
$val = db2_get_option($conn5, 'userid');
echo $val . "\n";

$options6 = array('acctstr' => 'account');
$conn6 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn6, $options6, 1);
$val = db2_get_option($conn6, 'acctstr');
echo $val . "\n";

$options7 = array('applname' => 'myapp');
$conn7 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn7, $options7, 1);
$val = db2_get_option($conn7, 'applname');
echo $val . "\n";

$options8 = array('wrkstnname' => 'workstation');
$conn8 = db2_connect($database, $user, $password);
$rc = db2_set_option($conn8, $options8, 1);
$val = db2_get_option($conn8, 'wrkstnname');
echo $val . "\n";
?>

以上示例会输出:

Client attributes passed through connection string:
db2inst1
account
myapp
workstation
Client attributes passed post-connection:
db2inst1
account
myapp
workstation

参见 

  • db2_connect() - 返回与数据库的连接
  • db2_cursor_type() - 返回语句资源使用的游标类型
  • db2_exec() - 直接执行 SQL 语句
  • db2_set_option() - 设置连接或语句资源的选项
  • db2_pconnect() - 返回与数据库的持久连接
  • db2_prepare() - 准备要执行的 SQL 语句


以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号