oci_error
(PHP 5, PECL oci8:1.1-1.2.4)
oci_error — Retourne la dernière erreur Oracle
Description
Retourne la dernière erreur Oracle.
Liste de paramètres
- source
-
Pour la plupart des erreurs, le paramètre source représente une ressource de connexion. Pour les erreurs de connexion avec les fonctions oci_connect(), oci_new_connect() ou oci_pconnect(), ne passez aucun paramètre.
Valeurs de retour
Si aucune erreur n'est trouvée, oci_error() retourne FALSE. oci_error() retourne l'erreur sous la forme d'un tableau associatif. Dans ce tableau, l'élément code contient le numéro d'erreur Oracle et message contient le message d'erreur.
Historique
Version | Description |
---|---|
4.3 | offset et sqltext seront aussi incluses dans le tableau retourné, pour indiquer la position de l'erreur et la requête en cause. |
Exemples
Example#1 Exemple d'affichage d'un message d'erreur Oracle après une erreur de connexion
$conn = @oci_connect("scott", "tiger", "mydb");
if (!$conn) {
$e = oci_error(); // Pour les erreurs oci_connect, aucun paramètre n'est passé
echo htmlentities($e['message']);
}
Example#2 Exemple d'affichage d'un message d'erreur Oracle après une erreur d'analyse
$stmt = @oci_parse($conn, "select ' from dual"); // Notez l'erreur de guillemet
if (!$stmt) {
$e = oci_error($conn); // Pour les erreurs oci_parse, on passe la ressource de connexion
echo htmlentities($e['message']);
}
Example#3 Exemple d'affichage d'un message d'erreur Oracle après une erreur d'exécution
$r = oci_execute($stmt);
if (!$r) {
$e = oci_error($stmt); // Pour les erreurs oci_execute, on passe la ressource de traitement
echo htmlentities($e['message']);
echo "<pre>";
echo htmlentities($e['sqltext']);
printf("\n%".($e['offset']+1)."s", "^");
echo "</pre>";
}
Notes
Note: Dans les versions de PHP antérieures à la version 5.0.0, vous devez utiliser la fonction ocierror(). Cet ancien nom est toujours utilisable : un alias a été fait vers la fonction oci_error(), pour assurer la compatibilité ascendante. Toutefois, il est recommandé de ne plus l'utiliser.