oci_define_by_name
oci_execute
Fonctions OCI8
PHP Manual

# oci_error

(PHP 5, PECL OCI8 >= 1.1.0)

oci_error — Retourne la dernière erreur Oracle

### Description

array oci_error ([ resource `$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.

Description du tableau retourné par oci_error()
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.

### Historique

Version | Description
--- | ---
PHP 4.3 | Les entrées offset et sqltext ont été ajoutées.

### Exemples

Exemple #1 Exemple d'affichage d'un message d'erreur Oracle après une erreur de connexion

`$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

`$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

`$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";
}`

### Notes

> Note: Dans les versions de PHP antérieures à la version 5.0.0, vous devez utiliser la fonction ocierror(). Le nom de l'ancienne fonction peut toujours être utilisé dans les versions courantes, malgré le fait qu'il est maintenant obsolète et que nous ne vous le recommandons pas.

oci_define_by_name
oci_execute
Fonctions OCI8
PHP Manual