(PHP 5.3.2, PHP 7, PECL OCI8 >= 1.4.0)
oci_set_module_name — Définit le nom du module
$connection
, string $module_name
)Définit le nom du module pour le tracage Oracle.
Le nom du module est enregistré avec la base de données lorsque le prochain 'roundtrip' depuis PHP vers la base de données survient ; typiquement, lorsqu'une requête SQL est exécutée.
Le nom pourra être ensuite interrogé depuis la vue d'administration de la base de données comme V$SESSION. Il pourra être également utilisé pour du traçage et de la surveillance, comme avec V$SQLAREA et DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE.
La valeur sera retenue via le mécanisme des connexions persistantes.
connection
Un identifiant de connexion Oracle, retourné par la fonction oci_connect(), oci_pconnect() ou la fonction oci_new_connect().
module_name
Chaîne choisie par l'utilisateur jusqu'à 48 octets de long.
Cette fonction retourne TRUE
en cas de
succès ou FALSE
si une erreur survient.
Note: Requis par la version Oracle
Cette fonction est disponible si PHP est lié à partir de la version 10g de la bibliothèque de la base de données Oracle .
Avec les anciennes version OCI8 ou les anciennes bases de données Oracle, l'information quant au client peut être défini en utilisant le paquet Oracle DBMS_APPLICATION_INFO. Ceci est moins efficace que d'utiliser la fonction oci_set_client_info().
Quelques fonctions OCI8 nécessitent des allé-retours avec la base de données. Ces allé-retours peuvent être évités lors de l'utilisation de requêtes dont le résultat est mis en cache.
Exemple #1 Définition du nom du module
<?php
$c = oci_connect('hr', 'welcome', 'localhost/XE');
// Enregistrement du module
oci_set_module_name($c, 'Home Page');
// Code générant un roundtrip, par exemple, une requête :
$s = oci_parse($c, 'select * from dual');
oci_execute($s);
oci_fetch_all($s, $res);
sleep(30);
?>
// Pendant l'exécution du script, l'administrateur peut voir les // modules enn utilisation : sqlplus system/welcome SQL> select module from v$session;