odbc_columns

(PHP 4, PHP 5, PHP 7, PHP 8)

odbc_columnsLists the column names in specified tables

Description

odbc_columns(
    resource$odbc,
    ?string$catalog = null,
    ?string$schema = null,
    ?string$table = null,
    ?string$column = null
): resource|false

Lists all columns in the requested range.

Parameters

odbc

The ODBC connection identifier, see odbc_connect() for details.

catalog

The catalog ('qualifier' in ODBC 2 parlance).

schema

The schema ('owner' in ODBC 2 parlance). This parameter accepts the following search patterns: % to match zero or more characters, and _ to match a single character.

table

The table name. This parameter accepts the following search patterns: % to match zero or more characters, and _ to match a single character.

column

The column name. This parameter accepts the following search patterns: % to match zero or more characters, and _ to match a single character.

Return Values

Returns an ODBC result identifier or false on failure.

The result set has the following columns:

  • 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
Drivers can report additional columns.

The result set is ordered by TABLE_CAT, TABLE_SCHEM, TABLE_NAME and ORDINAL_POSITION.

Changelog

VersionDescription
8.0.0schema, table and column are now nullable.

Examples

Example #1 List Columns of a Table

<?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
}
?>

The above example will output something similar to:

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 )

See Also

To Top