PHP8 db2_get_option
(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_USERID | X | X | - |
acctstr | SQL_ATTR_INFO_ACCTSTR | X | X | - |
ApplName | SQL_ATTR_INFO_APPLNAME | X | X | - |
wrkstnname | SQL_ATTR_INFO_WRKSTNNAME | X | X | - |
返回值
返回成功时提供的连接属性的当前设置 或者在失败时返回 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 语句