PHP8 odbc_columns
(PHP 4、PHP 5、PHP 7、PHP 8)
odbc_columns — 列出指定表中的列名
说明
odbc_columns(
resource $odbc,
?string $catalog = null,
?string $schema = null,
?string $table = null,
?string $column = null
): resource|false列出请求范围内的所有列。
参数
odbcODBC 连接标识符,详见 odbc_connect()。
catalog目录(ODBC 2 用语中的“限定符”)。
schema架构(ODBC 2 用语中的“owner”)。 此参数接受下列查询模式: 来匹配零到多个字符, 来匹配单个字符。
%_table表名。 此参数接受下列查询模式: 来匹配零到多个字符, 来匹配单个字符。
%_columnThe column name. 此参数接受下列查询模式: 来匹配零到多个字符, 来匹配单个字符。
%_
返回值
返回 ODBC 结果标识符 或者在失败时返回 false。
结果集包含以下列:
- TABLE_CAT
- TABLE_SCHEM
- TABLE_NAME
- COLUMN_NAME
- DATA_TYPE
- TYPE_NAME
- COLUMN_SIZE
- BUFFER_LENGTH
- DECIMAL_DIGITS
- NUM_PREC_RADIX
- NULLABLE
- REMARKS
- COLUMN_DEF
- SQL_DATA_TYPE
- SQL_DATETIME_SUB
- CHAR_OCTET_LENGTH
- ORDINAL_POSITION
- IS_NULLABLE
驱动程序可以报告其他列。
结果集按 、 和 排序。TABLE_CATTABLE_SCHEMTABLE_NAMEORDINAL_POSITION
更新日志
| 版本 | 说明 |
|---|---|
| 8.0.0 | schema,现在是可为 null 的。tablecolumn |
示例
示例 #1 列出表的列
<?php
$conn = odbc_connect($dsn, $user, $pass);
$columns = odbc_columns($conn, 'TutorialDB', 'dbo', 'test', '%');
while (($row = odbc_fetch_array($columns))) {
print_r($row);
break; // further rows omitted for brevity
}
?>以上示例的输出类似于:
Array
(
[TABLE_CAT] => TutorialDB
[TABLE_SCHEM] => dbo
[TABLE_NAME] => TEST
[COLUMN_NAME] => id
[DATA_TYPE] => 4
[TYPE_NAME] => int
[COLUMN_SIZE] => 10
[BUFFER_LENGTH] => 4
[DECIMAL_DIGITS] => 0
[NUM_PREC_RADIX] => 10
[NULLABLE] => 0
[REMARKS] =>
[COLUMN_DEF] =>
[SQL_DATA_TYPE] => 4
[SQL_DATETIME_SUB] =>
[CHAR_OCTET_LENGTH] =>
[ORDINAL_POSITION] => 1
[IS_NULLABLE] => NO
)参见
- odbc_columnprivileges() - 列出给定表的列和关联权限
- odbc_procedurecolumns() - 检索有关过程参数的信息