(PHP 4, PHP 5, PHP 7)
odbc_tables — Get the list of table names stored in a specific data source
$connection_id
[, string $catalog
[, string $schema
[, string $name
[, string $types
]]]] ) : resource|falseLists all tables in the requested range.
To support enumeration of qualifiers, owners, and table types,
the following special semantics for the
catalog
, schema
,
name
, and
table_type
are available:
catalog
is a single percent
character (%) and schema
and
name
are empty strings, then the result
set contains a list of valid qualifiers for the data
source. (All columns except the TABLE_QUALIFIER column contain
NULLs.)
schema
is a single percent character
(%) and catalog
and
name
are empty strings, then the result
set contains a list of valid owners for the data source. (All
columns except the TABLE_OWNER column contain
NULLs.)
table_type
is a single percent
character (%) and catalog
,
schema
and name
are empty strings, then the result set contains a list of
valid table types for the data source. (All columns except the
TABLE_TYPE column contain NULLs.)
connection_id
ODBC 连接标识符,详见 odbc_connect()。
catalog
The catalog ('qualifier' in ODBC 2 parlance).
schema
The schema ('owner' in ODBC 2 parlance). 此参数接受下列查询模式:"%" 来匹配零到多个字符,"_" 来匹配单个字符。
name
The name. 此参数接受下列查询模式:"%" 来匹配零到多个字符,"_" 来匹配单个字符。
types
If table_type
is not an empty string, it
must contain a list of comma-separated values for the types of
interest; each value may be enclosed in single quotes ('
) or
unquoted. For example, 'TABLE','VIEW'
or TABLE, VIEW
. If the
data source does not support a specified table type,
odbc_tables() does not return any results for
that type.
Returns an ODBC result identifier containing the information
或者在失败时返回 FALSE
.
The result set has the following columns:
TABLE_CAT
TABLE_SCHEM
TABLE_NAME
TABLE_TYPE
REMARKS
The result set is ordered by TABLE_TYPE
, TABLE_CAT
,
TABLE_SCHEM
and TABLE_NAME
.
Example #1 List Tables in a Catalog
<?php
$conn = odbc_connect($dsn, $user, $pass);
$tables = odbc_tables($conn, 'SalesOrders', 'dbo', '%', 'TABLE');
while (($row = odbc_fetch_array($tables))) {
print_r($row);
break; // further rows omitted for brevity
}
?>
以上例程的输出类似于:
Array ( [TABLE_CAT] => SalesOrders [TABLE_SCHEM] => dbo [TABLE_NAME] => Orders [TABLE_TYPE] => TABLE [REMARKS] => )