odbc_statistics
(PHP 4, PHP 5, PHP 7)
odbc_statistics — テーブルに関する統計情報を取得する
説明
odbc_statistics
( resource $connection_id
, string $catalog
, string $schema
, string $table_name
, int $unique
, int $accuracy
) : resource|false
テーブルおよびインデックスに関する統計情報を取得します。
パラメータ
connection_id
- ODBC 接続 ID。詳細は odbc_connect() を参照ください。
catalog
- カタログ(ODBC 2 の用語では '修飾子')。
schema
- スキーマ (ODBC 2 の用語では '所有者')。
table_name
- テーブル名。
unique
- インデックスのタイプ。
SQL_INDEX_UNIQUE
,SQL_INDEX_ALL
のいずれかを指定します。 accuracy
SQL_ENSURE
,SQL_QUICK
のいずれかを指定します。 後者は、サーバで利用できる場合に限り、CARDINALITY
とPAGES
をドライバが取得するように要求します。
返り値
ODBC 結果 ID を返します。失敗した場合に false
を返します。
結果セットのカラムは次のようになります。
TABLE_CAT
TABLE_SCHEM
TABLE_NAME
NON_UNIQUE
INDEX_QUALIFIER
INDEX_NAME
TYPE
ORDINAL_POSITION
COLUMN_NAME
ASC_OR_DESC
CARDINALITY
PAGES
FILTER_CONDITION
ドライバは追加のカラムを返すことが出来ます。
結果セットは NON_UNIQUE
, TYPE
, INDEX_QUALIFIER
,
INDEX_NAME
, ORDINAL_POSITION
でソートされます。
例
例1 テーブルの統計情報を表示する
<?php$conn = odbc_connect($dsn, $user, $pass);$statistics = odbc_statistics($conn, 'TutorialDB', 'dbo', 'TEST', SQL_INDEX_UNIQUE, SQL_QUICK);while (($row = odbc_fetch_array($statistics))) { print_r($row); break; // further rows omitted for brevity}?>
上の例の出力は、 たとえば以下のようになります。
Array ( [TABLE_CAT] => TutorialDB [TABLE_SCHEM] => dbo [TABLE_NAME] => TEST [NON_UNIQUE] => [INDEX_QUALIFIER] => [INDEX_NAME] => [TYPE] => 0 [ORDINAL_POSITION] => [COLUMN_NAME] => [ASC_OR_DESC] => [CARDINALITY] => 15 [PAGES] => 3 [FILTER_CONDITION] => )