(PHP 5 >= 5.3.2, PHP 7, PHP 8, PECL OCI8 >= 1.4.0)
oci_set_action — Définit le nom de l'action
Définit le nom de l'action pour un traçage Oracle.
Le nom de l'action est enregistré avec la base de données lors du prochain aller-retour 'round-trip' entre PHP et la base de données ; typiquement, lorsqu'une requête SQL est exécutée.
Le nom de l'action peut être interrogé par la suite depuis la vue d'administration
de la base de données V$SESSION.
Il peut être utilisé pour tracer et surveiller d'autres vues comme
V$SQLAREA et DBMS_MONITOR.SERV_MOD_ACT_STAT_ENABLE.
La valeur peut être conservée au travers des connexions persistantes.
connectionUn identifiant de connexion Oracle, retourné par la fonction oci_connect(), oci_pconnect() ou la fonction oci_new_connect().
actionChaîne choisie par l'utilisateur jusqu'à 32 octets de long.
Exemple #1 Définition d'une action
<?php
$c = oci_connect('hr', 'welcome', 'localhost/XE');
// Enregistre l'action
oci_set_action($c, 'Friend Lookup');
// Code générant un aller-retour (round-trip), 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 actions // en cours d'exécution : sqlplus system/welcome SQL> select action from v$session;
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
versions d'OCI8 ou les anciennes bases de données Oracle, l'information quant au client
peut être définie 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 allers-retours avec la base de données. Ces allers-retours peuvent être évités lors de l'utilisation de requêtes dont le résultat est mis en cache.