PHP Conference Japan 2024

db2_columns

(PECL ibm_db2 >= 1.0.0)

db2_columns返回一个结果集,其中列出了表中的列以及关联的元数据

描述

db2_columns(
    资源 $connection,
    ?字符串 $qualifier = null,
    ?字符串 $schema = null,
    ?字符串 $table_name = null,
    ?字符串 $column_name = null
): 资源

返回一个结果集,其中列出了表中的列以及关联的元数据。

参数

connection

与 IBM DB2、Cloudscape 或 Apache Derby 数据库的有效连接。

qualifier

在 OS/390 或 z/OS 服务器上运行的 DB2 数据库的限定符。对于其他数据库,请传递null或空字符串。

schema

包含表的模式。要匹配所有模式,请传递'%'

table_name

表或视图的名称。要匹配数据库中的所有表,请传递null或空字符串。

column_name

列的名称。要匹配表中的所有列,请传递null或空字符串。

返回值

返回一个语句资源,其中包含一个结果集,该结果集包含描述与指定参数匹配的列的行。这些行由以下列组成

列名 描述
TABLE_CAT 目录的名称。如果此表没有目录,则值为 NULL。
TABLE_SCHEM 模式的名称。
TABLE_NAME 表或视图的名称。
COLUMN_NAME 列的名称。
DATA_TYPE 列的 SQL 数据类型,表示为整数值。
TYPE_NAME 表示列数据类型的字符串。
COLUMN_SIZE 表示列大小的整数值。
BUFFER_LENGTH 存储此列数据的最大字节数。
DECIMAL_DIGITS 列的刻度,或null(刻度不适用时)。
NUM_PREC_RADIX 整数值,可以是10(表示精确数值数据类型)、2(表示近似数值数据类型)或null(表示基数不适用的数据类型)。
NULLABLE 表示列是否可为空的整数值。
REMARKS 列的描述。
COLUMN_DEF 列的默认值。
SQL_DATA_TYPE 表示列大小的整数值。
SQL_DATETIME_SUB 返回一个表示日期时间子类型代码的整数值,或null(对于不适用此代码的 SQL 数据类型)。
CHAR_OCTET_LENGTH 字符数据类型列的最大八位字节长度,对于单字节字符集数据与 COLUMN_SIZE 相匹配,对于非字符数据类型则为null
ORDINAL_POSITION 表中列的从 1 开始的索引位置。
IS_NULLABLE 字符串值,其中 'YES' 表示列可为空,'NO' 表示列不可为空。

参见

添加注释

用户贡献的注释 3 条注释

匿名
10 年前
与之前的消息一样,将 null 作为 db2_columns 的最后一个参数传递会导致没有任何内容返回。传递 '%' 则可以正常工作。文档确实需要更新以更正此错误,因为它非常具有误导性,并且 8 年前就被报告为错误!
david dot rekowski at gmx dot de
16 年前
必须是
db2_columns($conn, '', '%', $table, '%');

不要忘记表名是大写的。这让我很头疼。
lada(at)hoidekr.net
18 年前
这不是真的!
column-name
列的名称。要匹配表中的所有列,请传递 NULL 或空字符串。

您应该传递 '%' 以匹配所有列
To Top