Je veux écrire les infos d'une base de données dans un fichier .txt. Le fichier ne veut pas se fermer et rien ne s'écrit dedans alors que l'écriture ne renvoie aucune erreur. Voici le bout de code PL/SQL :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
BEGIN         
        nom_fic        := 'CatComptable.txt';          
        fichier_sortie := UTL_FILE.FOPEN(wa_repertoire,nom_fic,'W',32767);         
EXCEPTION          
WHEN OTHERS THEN            
        DBMS_OUTPUT.PUT_LINE('CatComptable 1:'||SQLERRM);       
END;              
FOR enr_CatComptable IN cur_CatComptable 
LOOP          
        wa_ligne := enr_CatComptable.cletbl||';'||enr_CatComptable.lib1;          
        DBMS_OUTPUT.PUT_LINE(wa_ligne);          
BEGIN           
        UTL_FILE.PUT_LINE(fichier_sortie, wa_ligne);          
EXCEPTION            
WHEN OTHERS THEN              
        DBMS_OUTPUT.PUT_LINE('CatComptable 2'||SQLERRM);          
END;       
END LOOP;                     
BEGIN           
        UTL_FILE.FCLOSE(fichier_sortie);       
EXCEPTION          
WHEN OTHERS THEN            
        DBMS_OUTPUT.PUT_LINE('CatComptable 3'||SQLERRM);       
END;
Et voici la réponse (les 4 premières lignes sont les résultats de la base):
A;Assujetti à la TVA sur Débit
D;Assujetti TVA Débit DOM-TOM
J;TVA intra-com. - VENTE
X;Exonéré Export
CatComptable 3ORA-29285: erreur d'écriture sur le fichier


Merci d'avance