(PECL ibm_db2 >= 1.1.1)
db2_server_info — 傳回一個物件,其屬性描述 DB2 資料庫伺服器
此函式會傳回一個物件,其中包含唯讀屬性,這些屬性會傳回有關 IBM DB2、Cloudscape 或 Apache Derby 資料庫伺服器的資訊。下表列出資料庫伺服器屬性
屬性名稱 | 傳回類型 | 說明 |
---|---|---|
DBMS_NAME | 字串 | 您所連線的資料庫伺服器名稱。對於 DB2 伺服器,這是 `DB2` 加上資料庫伺服器執行所在的作業系統的組合。 |
DBMS_VER | 字串 | 資料庫伺服器的版本,格式為字串 "MM.mm.uuuu",其中 MM 為主要版本,mm 為次要版本,uuuu 為更新版本。例如,"08.02.0001" 代表主要版本 8,次要版本 2,更新版本 1。 |
DB_CODEPAGE | int (整數) | 您所連線的資料庫的字碼頁。 |
DB_NAME | 字串 | 您所連線的資料庫名稱。 |
DFT_ISOLATION | 字串 |
伺服器支援的預設交易隔離層級
|
IDENTIFIER_QUOTE_CHAR | 字串 | 用於分隔識別碼的字元。 |
INST_NAME | 字串 | 資料庫伺服器上包含資料庫的實例。 |
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`**;如果不支援定義為 NOT NULL 的欄位,則為 **`false`**。 |
PROCEDURES | bool (布林值) | 如果資料庫伺服器支援使用 CALL 陳述式來呼叫預存程序,則為 **`true`**;如果不支援 CALL 陳述式,則為 **`false`**。 |
SPECIAL_CHARS | 字串 | 包含可在識別碼名稱中使用的所有 a-Z、0-9 和底線以外字元的字串。 |
SQL_CONFORMANCE | 字串 |
資料庫伺服器提供的 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)