oci_error
(PHP 5, PHP 7, PECL OCI8 >= 1.1.0)
oci_error — Retourne la dernière erreur Oracle
Description
$resource
] )Retourne la dernière erreur Oracle.
La fonction doit être appelée immédiatement après qu'une erreur survient. Les erreurs sont réinitialisées après une requête réussie.
Liste de paramètres
-
resource
-
Pour la plupart des erreurs, le paramètre
resource
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
. Sinon, oci_error() retourne l'information concernant
l'erreur sous la forme d'un tableau associatif.
Clé du tableau | Type | Description |
---|---|---|
code | integer | Le numéro d'erreur Oracle. |
message | string | Le texte de l'erreur Oracle. |
offset | integer | L'octet de position de l'erreur dans la requête SQL. S'il n'y a pas de requête, 0 sera placé comme valeur. |
sqltext | string | Le texte de la requête SQL. S'il n'y a pas de requête, ce sera une chaîne vide. |
Exemples
Exemple #1 Exemple d'affichage d'un message d'erreur Oracle après une erreur de connexion
<?php
$conn = oci_connect("hr", "welcome", "localhost/XE");
if (!$conn) {
$e = oci_error(); // Pour les erreurs oci_connect, ne passez pas de gestionnaire de connexion
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>
Exemple #2 Exemple d'affichage d'un message d'erreur Oracle après une erreur d'analyse
<?php
$stid = oci_parse($conn, "select ' from dual"); // Notez l'erreur avec les guillemets
if (!$stid) {
$e = oci_error($conn); // Pour les erreurs oci_parse, passez le gestionnaire de connexion
trigger_error(htmlentities($e['message']), E_USER_ERROR);
}
?>
Exemple #3 Exemple d'affichage d'un message d'erreur Oracle après une erreur d'exécution rencontré dans une requête SQL
<?php
$stid = oci_parse($conn, "select does_not_exist from dual");
$r = oci_execute($stid);
if (!$r) {
$e = oci_error($stid); // Pour les erreurs oci_execute, passez le gestionnaire de connexion
print htmlentities($e['message']);
print "\n<pre>\n";
print htmlentities($e['sqltext']);
printf("\n%".($e['offset']+1)."s", "^");
print "\n</pre>\n";
}
?>
Version en cache
26/11/2024 08:15:54 Cette version de la page est en cache (à la date du 26/11/2024 08:15:54) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-oci-error.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.