ORA-06512 ORA-06510 UTL_FILE WRITE ERROR

Posted on mars 13th, 2007 in DataBase, Oracle, Tips by David

Oracle : 8.1.7

OS : Tous ?

Symptomes :

Lors d’une écriture / lecture de fichier :

ERROR at line 1:
ORA-06510: PL/SQL: unhandled user-defined exception
ORA-06512: at “SYS.UTL_FILE”, line 103
ORA-06512: at “SYS.UTL_FILE”, line 306
ORA-06512: at line 121

Solutions :

1 - Vous n’avez pas le droit , ne pouvez pas écrire dans le fichier.

Il faut vérifier que l’utilisateur Oracle, ou le votre a bien les droits pour écrire le fichier, et que le répertoire existe.

Sous unix, si vous etes connecté en BEQ ( du genre sqlplus <nomutilisateur> ), c’est avec votre utilisateur qu’il faut faire le test. Connecté en SQL/NET ( sqlplus <nomuser>@<labase> ) il faut vérifier que l’utilisateur oracle a le droit d’écrire.

2 - Ligne trop longue !

Par défaut le FOPEN vous autorise 1024 caractères, donc 1023 en comptant le retour chariot.

Pour modifier cela, il faut utiliser “l’autre” FOPEN :

UTL_FILE.FOPEN (
location IN VARCHAR2,
filename IN VARCHAR2,
open_mode IN VARCHAR2,
max_linesize IN BINARY_INTEGER)
RETURN file_type;

Vala !

One Response to 'ORA-06512 ORA-06510 UTL_FILE WRITE ERROR'

Subscribe to comments with RSS or TrackBack to 'ORA-06512 ORA-06510 UTL_FILE WRITE ERROR'.

  1. Michel said,

    on mai 4th, 2010 at 4:08

    Mais alors ca veut dire quoile code erreur ORA-06512?
    Je viens de trouver une explication en anglais sur http://www.oracleref.com/en/ORA-06512.html mais ca ne m’aide pas beaucoup.
    Bon je dois avouer que je débute en oracle. Mais si vous pouviez m’aider.

Post a comment