Bonjour à tous,
Je sèche depuis un moment sur un problème particulier en pl/sql. Je souhaite ouvrir un fichier en (lecture/écriture). J'ai cherché sur le web et j'ai trouvé le paquetage UTL_FILE.
(http://sheikyerbouti.developpez.com/...e=Chap8#L8.2.5)
J'ai créé un DIRECTORY et ai attribué les droits :
Jusque là tout va bien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SQL> CREATE OR REPLACE DIRECTORY MONREP AS 'E:/SQL/in' ; Repertoire créé. SQL> GRANT READ, WRITE ON DIRECTORY MONREP TO PUBLIC ; Autorisation de privilèges (GRANT) acceptée.
Je lance ensuite mon block PL/SQL pour créer mon fichier et là c'est le drame:
Mon dossier 'E:/SQL/in' existe bel et bien. Mais oracle n'arrive visiblementpas à le trouver. J'ai essayé de modifier le chemin, mais sans succès.
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
25
26
27
28
29 SQL> DECLARE 2 f _file_id UTL_FILE.FILE_TYPE; 3 v_file_location VARCHAR2(256) := '/in'; 4 v_line VARCHAR2(4000); 5 BEGIN 6 7 dbms_output.put_line(v_file_location); 8 f_file_id := UTL_FILE.FOPEN(v_file_location,'numero1.txt','a'); 9 --UTL_FILE.PUT_LINE(f_file_id,'abcdefghijklmnopqrstuvwxyz'); 10 --UTL_FILE.FCLOSE (f_file_id); 11 12 13 14 --f_file_id := UTL_FILE.FOPEN(v_file_location,'numero.txt','r'); 15 --UTL_FILE.GET_LINE(f_file_id,v_line); 16 --DBMS_OUTPUT.PUT_LINE(v_line); 17 --UTL_FILE.FCLOSE (f_file_id); 18 19 EXCEPTION 20 WHEN OTHERS 21 THEN 22 dbms_output.put_line(SQLERRM); 23 UTL_FILE.FCLOSE_ALL; 24 END; 25 / /in ORA-29280: chemin de répertoire non valide Procédure PL/SQL terminée avec succès.
J'ai lu quelque part qu'il fallait rajouter une ligne dans le fichier ora.init: utl_file_dir = '<Chemin/>'
Je l'ai donc cherché pour le modifier, mais je ne l'ai pas trouvé...
J'ai un raccourci qui se nomme init.ora, mais il pointe vers Le fichier : init.ora.44200618538 En déspoire de cause, j'ai modifié ce fichier, mais rien n'y fait.
Je travaille sur oracle 10G et Windows Xp pro 2002.
Merci beaucoup de votre aide.
Stos







Répondre avec citation
Partager