db2_server_info
    (no version information, might be only in CVS)
db2_server_info -- 
   DB2 データベースサーバの情報をプロパティに保持するオブジェクトを返す
  
説明
object 
db2_server_info ( resource connection )
   この関数は、IBM DB2、Cloudscape あるいは Apache Derby
   データベースサーバについての情報を
   読み取り専用のプロパティに保持するオブジェクトを返します。
   以下の表は、データベースサーバのプロパティの一覧です。
   
表 1. データベースサーバのプロパティ
| プロパティ名 | 返り値の型 | 説明 | 
|---|
| 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
 
            Uncommitted read: 変更内容は、他のトランザクションからも
            すぐに見えるようになります。
            - CS
 
            Cursor stability: あるトランザクションで読み込まれた行を、
            別のトランザクションから変更してコミットすることができます。
            - RS
 
            Read stability: 検索条件あるいは実行中のトランザクションに
            一致する行を、トランザクションから追加したり削除したりできます。
            - RR
 
            Repeatable read: 実行中のトランザクションに影響を受けるデータは、
            他のトランザクションからは見えません。
            - NC
 
            No commit: 変更内容は、操作が終了した時点で見えるようになります。
            明示的なコミットやロールバックはできません。
            
  
        | 
| 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_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)  |  
  |