(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_procedurecolumns — Retrieve information about parameters to procedures
$odbc
,$catalog
= null
,$schema
= null
,$procedure
= null
,$column
= null
Retrieve information about parameters to procedures.
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.
procedure
The proc.
This parameter accepts the following search patterns:
%
to match zero or more characters,
and _
to match a single character.
column
The column.
This parameter accepts the following search patterns:
%
to match zero or more characters,
and _
to match a single character.
Returns the list of input and output parameters, as well as the
columns that make up the result set for the specified procedures.
Returns an ODBC result identifier or false
on failure.
The result set has the following columns:
PROCEDURE_CAT
PROCEDURE_SCHEM
PROCEDURE_NAME
COLUMN_NAME
COLUMN_TYPE
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
The result set is ordered by PROCEDURE_CAT
, PROCEDURE_SCHEM
,
PROCEDURE_NAME
and COLUMN_TYPE
.
Version | Description |
---|---|
8.0.0 | Prior to this version, the function could only be called with either one or five arguments. |
Example #1 List Columns of a stored Procedure
<?php
$conn = odbc_connect($dsn, $user, $pass);
$columns = odbc_procedurecolumns($conn, 'TutorialDB', 'dbo', 'GetEmployeeSalesYTD;1', '%');
while (($row = odbc_fetch_array($columns))) {
print_r($row);
break; // further rows omitted for brevity
}
?>
The above example will output something similar to:
Array ( [PROCEDURE_CAT] => TutorialDB [PROCEDURE_SCHEM] => dbo [PROCEDURE_NAME] => GetEmployeeSalesYTD;1 [COLUMN_NAME] => @SalesPerson [COLUMN_TYPE] => 1 [DATA_TYPE] => -9 [TYPE_NAME] => nvarchar [COLUMN_SIZE] => 50 [BUFFER_LENGTH] => 100 [DECIMAL_DIGITS] => [NUM_PREC_RADIX] => [NULLABLE] => 1 [REMARKS] => [COLUMN_DEF] => [SQL_DATA_TYPE] => -9 [SQL_DATETIME_SUB] => [CHAR_OCTET_LENGTH] => 100 [ORDINAL_POSITION] => 1 [IS_NULLABLE] => YES )