(PHP 4, PHP 5, PHP 7, PHP 8)
odbc_procedures — 指定したデータソースに保存されているプロシージャのリストを取得する
$odbc
,$catalog
= null
,$schema
= null
,$procedure
= null
指定した範囲の全てのプロシージャのリストを取得します。
odbc
ODBC 接続オブジェクト。詳細は odbc_connect() を参照ください。
catalog
カタログ(ODBC 2 の用語では '修飾子')。
schema
スキーマ (ODBC 2 の用語では '所有者')。
このパラメータには以下の検索パターンを使用できます。
%
はゼロ個以上の文字にマッチし、
_
はひとつの文字にマッチします。
procedure
名前。
このパラメータには以下の検索パターンを使用できます。
%
はゼロ個以上の文字にマッチし、
_
はひとつの文字にマッチします。
情報を含むODBC 結果オブジェクトを返します。失敗した場合に false
を返します。
結果セットのカラムは次のようになります。
PROCEDURE_CAT
PROCEDURE_SCHEM
PROCEDURE_NAME
NUM_INPUT_PARAMS
NUM_OUTPUT_PARAMS
NUM_RESULT_SETS
REMARKS
PROCEDURE_TYPE
結果セットは PROCEDURE_CAT
,
PROCEDURE_SCHEMA
, PROCEDURE_NAME
でソートされます。
バージョン | 説明 |
---|---|
8.4.0 |
引数 odbc は、Odbc\Connection クラスのインスタンスを期待するようになりました。
これより前のバージョンでは、resource を期待していました。
|
8.4.0 | この関数は Odbc\Result クラスのインスタンスを返すようになりました。 これより前のバージョンでは、resource を返していました。 |
8.0.0 | これより前のバージョンでは、 この関数は引数をひとつ、または4個指定した場合のみ、呼び出すことが可能でした。 |
例1 データベースのプロシージャ一覧を表示する
<?php
$conn = odbc_connect($dsn, $user, $pass);
$procedures = odbc_procedures($conn, $catalog, $schema, '%');
while (($row = odbc_fetch_array($procedures))) {
print_r($row);
break; // further rows omitted for brevity
}
?>
上の例の出力は、 たとえば以下のようになります。
Array ( [PROCEDURE_CAT] => TutorialDB [PROCEDURE_SCHEM] => dbo [PROCEDURE_NAME] => GetEmployeeSalesYTD;1 [NUM_INPUT_PARAMS] => -1 [NUM_OUTPUT_PARAMS] => -1 [NUM_RESULT_SETS] => -1 [REMARKS] => [PROCEDURE_TYPE] => 2 )