[Oracle 10g] Lecture d'un fichier en PL/SQL
Bonjour à tous,
J'essaie actuellement sans succès d'écrire une procédure permettant de lire un fichier (alert_orcl.log pour être précis) avec des commandes PL/SQL.
J'ai trouvé le package UTL_FILE qui semblerait convenir, seulement, quand je m'en sers dans une procédure sous SQL*Plus, j'ai toujours l'erreur : "Procédure créée avec des erreurs de compilation".
Actuellement, j'ai essayé le code suivant :
Code:
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
| SET SERVEROUTPUT ON
CREATE DIRECTORY FICHIERS_IN AS 'C:\scripts';
GRANT READ ON DIRECTORY FICHIERS_IN TO PUBLIC;
CREATE OR REPLACE PROCEDURE fic_ouv (nom_rep VARCHAR2, nom_fic VARCHAR2)
IS
ligne_fic VARCHAR2(200);
contenu_fic utl_file.file_type;
BEGIN
contenu_fic := UTL_FILE.FOPEN(nom_rep, nom_fic, 'r');
LOOP
BEGIN
UTL_FILE.GET_LINE(contenu_fic, ligne_fic);
DBMS_OUTPUT.PUT_LINE(ligne_fic);
EXCEPTION
WHEN NO_DATA_FOUND THEN
UTL_FILE.CLOSE(contenu_fic);
EXIT;
END;
END LOOP;
END;
/
EXECUTE fic_ouv ('FICHIERS_IN', 'test.txt');
/ |
Quelqu'un pourrait-il m'éclairer ?