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 サーバーの場合は、 DB2 の後にサーバーが稼動している OS の名前が続きます。
DBMS_VER string データベースサーバーのバージョン。"MM.mm.uuuu" という形式の文字列で、 MM がメジャーバージョン、 mm がマイナーバージョン、 そして uuuu がアップデートを表します。 例えば "08.02.0001" は メジャーバージョン 8、マイナーバージョン 2、アップデート 1 を表します。
DB_CODEPAGE int 接続中のデータベースのコードページ。
DB_NAME string 接続中のデータベースの名前。
DFT_ISOLATION string サーバーがサポートしているデフォルトのトランザクション分離レベル。
UR

非コミット読み取り: 変更内容は、他のトランザクションからも すぐに見えるようになります。

CS

カーソル固定: あるトランザクションで読み込まれた行を、 別のトランザクションから変更してコミットすることができます。

RS

読み取り固定: 検索条件あるいは実行中のトランザクションに 一致する行を、トランザクションから追加したり削除したりできます。

RR

反復可能読み取り: 実行中のトランザクションに影響を受けるデータは、 他のトランザクションからは見えません。

NC

コミット不可: 変更内容は、操作が終了した時点で見えるようになります。 明示的なコミットやロールバックはできません。

IDENTIFIER_QUOTE_CHAR string 識別子を区切るための文字。
INST_NAME string データベースを含むデータベースサーバーのインスタンス名。
ISOLATION_OPTION array データベースサーバーがサポートする分離オプション。 分離オプションについては DFT_ISOLATION プロパティの説明を参照ください。
KEYWORDS array データベースサーバーの予約語の配列。
LIKE_ESCAPE_CLAUSE bool データベースサーバーがワイルドカード文字 % および _ の使用をサポートしている場合に true、 これらのワイルドカードをサポートしていない場合に false
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 定義をサポートしている場合に true、サポートしていない場合に false
PROCEDURES bool データベースサーバーがストアドプロシージャをコールするための CALL 文をサポートしている場合に true、サポートしていない場合に false
SPECIAL_CHARS string 識別子として使用可能な文字のうち、 a-Z、0-9 およびアンダースコア以外の文字。
SQL_CONFORMANCE string データベースサーバーの ANSI/ISO SQL-92 仕様への対応レベル。
ENTRY

SQL-92 エントリレベルに準拠しています。

FIPS127

FIPS-127-2 transitional に準拠しています。

FULL

SQL-92 完全レベルに準拠しています。

INTERMEDIATE

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_dumpsizeof($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)

参考

  • db2_client_info() - DB2 データベースクライアントの情報をプロパティに保持するオブジェクトを返す

関連キーワード:  データベース, サーバー, int, string, サポート, NAME, 情報, オブジェクト, 保持, 最大