db2_server_info
(PECL ibm_db2 >= 1.1.1)
db2_server_info — DB2 データベースサーバーの情報をプロパティに保持するオブジェクトを返す
説明
db2_server_info
( resource $connection
) : object
この関数は、IBM DB2、Cloudscape あるいは Apache Derby データベースサーバーについての情報を 読み取り専用のプロパティに保持するオブジェクトを返します。 以下の表は、データベースサーバーのプロパティの一覧です。
プロパティ名 | 返り値の型 | 説明 |
---|---|---|
DBMS_NAME | string | 接続中のデータベースサーバーの名前。DB2 サーバーの場合は、
|
DBMS_VER | string | データベースサーバーのバージョン。"MM.mm.uuuu" という形式の文字列で、
|
DB_CODEPAGE | int | 接続中のデータベースのコードページ。 |
DB_NAME | string | 接続中のデータベースの名前。 |
DFT_ISOLATION | string |
サーバーがサポートしているデフォルトのトランザクション分離レベル。
|
IDENTIFIER_QUOTE_CHAR | string | 識別子を区切るための文字。 |
INST_NAME | string | データベースを含むデータベースサーバーのインスタンス名。 |
ISOLATION_OPTION | array | データベースサーバーがサポートする分離オプション。
分離オプションについては DFT_ISOLATION プロパティの説明を参照ください。 |
KEYWORDS | array | データベースサーバーの予約語の配列。 |
LIKE_ESCAPE_CLAUSE | bool | データベースサーバーがワイルドカード文字
|
MAX_COL_NAME_LEN | int | データベースサーバーがサポートするカラム名の最大バイト数。 |
MAX_IDENTIFIER_LEN | int | データベースサーバーがサポートする SQL 識別子の最大文字数。 |
MAX_INDEX_SIZE | int | データベースサーバーがサポートするインデックスつきカラムの最大バイト数。 |
MAX_PROC_NAME_LEN | int | データベースサーバーがサポートするプロシージャ名の最大バイト数。 |
MAX_ROW_SIZE | int | データベースサーバーがサポートするベーステーブルの行の最大バイト数。 |
MAX_SCHEMA_NAME_LEN | int | データベースサーバーがサポートするスキーマ名の最大バイト数。 |
MAX_STATEMENT_LEN | int | データベースサーバーがサポートする SQL 文の最大バイト数。 |
MAX_TABLE_NAME_LEN | int | データベースサーバーがサポートするテーブル名の最大バイト数。 |
NON_NULLABLE_COLUMNS | bool | データベースサーバーがカラムの NOT NULL 定義をサポートしている場合に
|
PROCEDURES | bool | データベースサーバーがストアドプロシージャをコールするための
CALL 文をサポートしている場合に |
SPECIAL_CHARS | string | 識別子として使用可能な文字のうち、
a-Z、0-9 およびアンダースコア以外の文字。 |
SQL_CONFORMANCE | string |
データベースサーバーの ANSI/ISO SQL-92 仕様への対応レベル。
|
パラメータ
connection
- アクティブな DB2 クライアント接続を指定します。
返り値
成功した場合にオブジェクト、失敗した場合に false
を返します。
例
例1 db2_server_info() の例
サーバーの情報を取得するには、有効なデータベース接続リソースを db2_server_info() に渡す必要があります。
<?php$conn = db2_connect('sample', 'db2inst1', 'ibmdb2');$server = db2_server_info( $conn );if ($server) { echo "DBMS_NAME: "; var_dump( $server->DBMS_NAME ); echo "DBMS_VER: "; var_dump( $server->DBMS_VER ); echo "DB_CODEPAGE: "; var_dump( $server->DB_CODEPAGE ); echo "DB_NAME: "; var_dump( $server->DB_NAME ); echo "INST_NAME: "; var_dump( $server->INST_NAME ); echo "SPECIAL_CHARS: "; var_dump( $server->SPECIAL_CHARS ); echo "KEYWORDS: "; var_dump( sizeof($server->KEYWORDS) ); echo "DFT_ISOLATION: "; var_dump( $server->DFT_ISOLATION ); echo "ISOLATION_OPTION: "; $il = ; foreach( $server->ISOLATION_OPTION as $opt ) { $il .= $opt." "; } var_dump( $il ); echo "SQL_CONFORMANCE: "; var_dump( $server->SQL_CONFORMANCE ); echo "PROCEDURES: "; var_dump( $server->PROCEDURES ); echo "IDENTIFIER_QUOTE_CHAR: "; var_dump( $server->IDENTIFIER_QUOTE_CHAR ); echo "LIKE_ESCAPE_CLAUSE: "; var_dump( $server->LIKE_ESCAPE_CLAUSE ); echo "MAX_COL_NAME_LEN: "; var_dump( $server->MAX_COL_NAME_LEN ); echo "MAX_ROW_SIZE: "; var_dump( $server->MAX_ROW_SIZE ); echo "MAX_IDENTIFIER_LEN: "; var_dump( $server->MAX_IDENTIFIER_LEN ); echo "MAX_INDEX_SIZE: "; var_dump( $server->MAX_INDEX_SIZE ); echo "MAX_PROC_NAME_LEN: "; var_dump( $server->MAX_PROC_NAME_LEN ); echo "MAX_SCHEMA_NAME_LEN: "; var_dump( $server->MAX_SCHEMA_NAME_LEN ); echo "MAX_STATEMENT_LEN: "; var_dump( $server->MAX_STATEMENT_LEN ); echo "MAX_TABLE_NAME_LEN: "; var_dump( $server->MAX_TABLE_NAME_LEN ); echo "NON_NULLABLE_COLUMNS: "; var_dump( $server->NON_NULLABLE_COLUMNS ); db2_close($conn);}?>
上の例の出力は以下となります。
DBMS_NAME: string(9) "DB2/LINUX" DBMS_VER: string(10) "08.02.0000" DB_CODEPAGE: int(1208) DB_NAME: string(6) "SAMPLE" INST_NAME: string(8) "db2inst1" SPECIAL_CHARS: string(2) "@#" KEYWORDS: int(179) DFT_ISOLATION: string(2) "CS" ISOLATION_OPTION: string(12) "UR CS RS RR " SQL_CONFORMANCE: string(7) "FIPS127" PROCEDURES: bool(true) IDENTIFIER_QUOTE_CHAR: string(1) """ LIKE_ESCAPE_CLAUSE: bool(true) MAX_COL_NAME_LEN: int(30) MAX_ROW_SIZE: int(32677) MAX_IDENTIFIER_LEN: int(18) MAX_INDEX_SIZE: int(1024) MAX_PROC_NAME_LEN: int(128) MAX_SCHEMA_NAME_LEN: int(30) MAX_STATEMENT_LEN: int(2097152) MAX_TABLE_NAME_LEN: int(128) NON_NULLABLE_COLUMNS: bool(true)