db2_columns
(PECL ibm_db2:1.0-1.6.2)
db2_columns — Returns a result set listing the columns and associated metadata for a table
Описание
Returns a result set listing the columns and associated metadata for a table.
Список параметров
- connection
-
A valid connection to an IBM DB2, Cloudscape, or Apache Derby database.
- qualifier
-
A qualifier for DB2 databases running on OS/390 or z/OS servers. For other databases, pass NULL or an empty string.
- schema
-
The schema which contains the tables. To match all schemas, pass '%'.
- table-name
-
The name of the table or view. To match all tables in the database, pass NULL or an empty string.
- column-name
-
The name of the column. To match all columns in the table, pass NULL or an empty string.
Возвращаемые значения
Returns a statement resource with a result set containing rows describing the columns matching the specified parameters. The rows are composed of the following columns:
Column name | Description |
---|---|
TABLE_CAT | Name of the catalog. The value is NULL if this table does not have catalogs. |
TABLE_SCHEM | Name of the schema. |
TABLE_NAME | Name of the table or view. |
COLUMN_NAME | Name of the column. |
DATA_TYPE | The SQL data type for the column represented as an integer value. |
TYPE_NAME | A string representing the data type for the column. |
COLUMN_SIZE | An integer value representing the size of the column. |
BUFFER_LENGTH | Maximum number of bytes necessary to store data from this column. |
DECIMAL_DIGITS | The scale of the column, or NULL where scale is not applicable. |
NUM_PREC_RADIX | An integer value of either 10 (representing an exact numeric data type), 2 (representing an approximate numeric data type), or NULL (representing a data type for which radix is not applicable). |
NULLABLE | An integer value representing whether the column is nullable or not. |
REMARKS | Description of the column. |
COLUMN_DEF | Default value for the column. |
SQL_DATA_TYPE | An integer value representing the size of the column. |
SQL_DATETIME_SUB | Returns an integer value representing a datetime subtype code, or NULL for SQL data types to which this does not apply. |
CHAR_OCTET_LENGTH | Maximum length in octets for a character data type column, which matches COLUMN_SIZE for single-byte character set data, or NULL for non-character data types. |
ORDINAL_POSITION | The 1-indexed position of the column in the table. |
IS_NULLABLE | A string value where 'YES' means that the column is nullable and 'NO' means that the column is not nullable. |
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с базами данных
- Расширения для работы с базами данных отдельных производителей
- IBM DB2, Cloudscape and Apache Derby
- db2_autocommit
- db2_bind_param
- db2_client_info
- db2_close
- db2_column_privileges
- db2_columns
- db2_commit
- db2_conn_error
- db2_conn_errormsg
- db2_connect
- db2_cursor_type
- db2_escape_string
- db2_exec
- db2_execute
- db2_fetch_array
- db2_fetch_assoc
- db2_fetch_both
- db2_fetch_object
- db2_fetch_row
- db2_field_display_size
- db2_field_name
- db2_field_num
- db2_field_precision
- db2_field_scale
- db2_field_type
- db2_field_width
- db2_foreign_keys
- db2_free_result
- db2_free_stmt
- db2_get_option
- db2_last_insert_id
- db2_lob_read
- db2_next_result
- db2_num_fields
- db2_num_rows
- db2_pclose
- db2_pconnect
- db2_prepare
- db2_primary_keys
- db2_procedure_columns
- db2_procedures
- db2_result
- db2_rollback
- db2_server_info
- db2_set_option
- db2_special_columns
- db2_statistics
- db2_stmt_error
- db2_stmt_errormsg
- db2_table_privileges
- db2_tables
Коментарии
This is not true!
column-name
The name of the column. To match all columns in the table, pass NULL or an empty string.
You should pass '%' to match all columns
must be
db2_columns($conn, '', '%', $table, '%');
Don't forget that table names are UPPERCASE. That gave me quite some headache.
As with previous message, passing null as the last param with db2_columns results in nothing being returned. Passing '%' instead works. The documentation really needs to be updated to correct this error as it's very misleading and was reported as wrong 8 years ago!