(PECL ibm_db2 >= 1.1.1)
db2_server_info — Retourne un objet avec des propriétés qui décrivent le serveur de base de données DB2
$connection
)Cette fonction retourne un objet avec des propriétés en lecture seule qui retournent des informations à propos le serveur de base de données IBM DB2, Cloudscape ou Apache Derby. La table suivante liste les propriétés du serveur de base de données :
Nom Propriété | Type de retour | Description |
---|---|---|
DBMS_NAME | chaîne de caractères | Le nom du serveur de base de données sur lequel vous êtes connecté. Pour des serveurs DB2, c'est une combinaison de DB2 suivi par le système d'exploitation sur lequel le serveur de base de données fonctionne. |
DBMS_VER | chaîne de caractères | La version du serveur de la base de données, dans la forme d'une chaîne de caractères "MM.mm.uuuu" où MM est la version majeure, mm est la version mineure et uuuu est la mise à jour. Par exemple, "08.02.0001" représente la version majeure 8, la version mineure 2, la mise à jour 1. |
DB_CODEPAGE | entier | Le code page de la base de données sur laquelle vous êtes connecté. |
DB_NAME | chaîne de caractères | Le nom de la base de données sur laquelle vous êtes connecté. |
DFT_ISOLATION | chaîne de caractères |
Le niveau par défaut d'isolation de transaction supporté par le serveur :
|
IDENTIFIER_QUOTE_CHAR | chaîne de caractères | Le caractère utilisé pour délimiter un identifiant. |
INST_NAME | chaîne de caractères | L'instance sur le serveur de base de données qui contient la base de données. |
ISOLATION_OPTION | tableau | Un tableau d'options d'isolation supporté par le serveur de base de données. Les options d'isolation sont décrites dans la propriété DFT_ISOLATION. |
KEYWORDS | tableau | Un tableau des mots-clés réservés par le serveur de base de données. |
LIKE_ESCAPE_CLAUSE | booléen | TRUE si le serveur de base de données supporte l'utilisation
des caractères de remplacement % et
_. FALSE si le serveur de base de données ne
supporte pas ces caractères de remplacement. |
MAX_COL_NAME_LEN | entier | Taille maximale d'un nom de colonne supportée par le serveur de base de données, exprimée en octets. |
MAX_IDENTIFIER_LEN | entier | Taille maximale d'un identifiant SQL supportée par les serveurs de base de données, exprimée en caractères. |
MAX_INDEX_SIZE | entier | Taille maximale des colonnes combinées dans un index supporté par le serveur de base de données, exprimée en octets. |
MAX_PROC_NAME_LEN | entier | Taille maximale d'un nom de procédure supporté par le serveur de base de données, exprimée en octets. |
MAX_ROW_SIZE | entier | Taille maximale d'une ligne dans la table de base supportée par le serveur de base de données, exprimée en octets. |
MAX_SCHEMA_NAME_LEN | entier | Taille maximale d'un nom de schéma supporté par le serveur de base de données, exprimé en octets. |
MAX_STATEMENT_LEN | entier | Taille maximale d'une requête SQL supporté par le serveur de base de données, exprimée en octets. |
MAX_TABLE_NAME_LEN | entier | Taille maximale d'un nom de table supporté par le serveur de base de données, exprimée en octets. |
NON_NULLABLE_COLUMNS | booléen | TRUE si le serveur de base de données supporte les colonnes
qui peuvent être définies comme NOT NULL, FALSE si le serveur de base
de données ne supporte pas les colonnes définies comme NOT
NULL. |
PROCEDURES | booléen | TRUE si le serveur de base de données supporte l'utilisation
de la requête CALL pour appeler les procédures enregistrées, FALSE si
le serveur de base de données ne supporte pas la requête CALL. |
SPECIAL_CHARS | chaîne de caractères | Une chaîne de caractères contenant tous les caractères autre que les lettres (majuscules et minuscules), les chiffres et le caractère souligné qui peuvent être utilisé en tant que nom d'identifiant. |
SQL_CONFORMANCE | chaîne de caractères |
Le niveau de conformité à la spécification ANSI/ISO SQL-92 offert par le serveur de base de données :
|
connection
Spécifie la connexion cliente DB2 active.
Retourne un objet si l'appel est réussi. Retourne FALSE
en cas d'erreur.
Exemple #1 Exemple avec db2_server_info()
Pour récupérer des informations à propos du serveur, vous devez passer une ressource de connexion de base de données valide à la fonction 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);
}
?>
L'exemple ci-dessus va afficher :
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)