IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

UTL_FILE.FOPEN :PLS-00221: 'FOPEN' n'est pas une procédure ou est indéfini


Sujet :

SQL Oracle

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    40
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2006
    Messages : 40
    Points : 36
    Points
    36
    Par défaut UTL_FILE.FOPEN :PLS-00221: 'FOPEN' n'est pas une procédure ou est indéfini
    Bonjour,

    Je voudrais utilisé UTL_FILE.FOPEN poru lire et ecrire dans des fichiers.

    j'ai donc créée un répertoire et j'ai donné des droits aux utilisateurs pour y accéder via
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    CREATE DIRECTORY temp as 'c:\temp\'
    GRANT READ, WRITE ON DIRECTORY temp TO PUBLIC;
    mais lorsque j'essaie de créée une procédure qui ouvre le fichier cela plante directement. J'ai l'impression qu'il ne reconnait pas UTL_FILE... Que faut-il faire pour l'activer ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    replace PROCEDURE read IS
    tmpVar NUMBER;
    -- p_fic utl_file.file_type;
     
    BEGIN
       UTL_FILE.FOPEN('/temp','myfile.txt','a');
    END ;
    Voici l'erreur que j'obtient avec ce code ci
    ORA-06550: Ligne 2, colonne 4 :
    PLS-00221: 'FOPEN' n'est pas une procédure ou est indéfini

    Si je décommente la déclaration de p_fic voici l'erreur que j'obtiens
    ORA-00900: instruction SQL non valide

    Merci d'avance pour votre aide

    Yoni Alhadeff
    Ps: je suis débutant sous oracle

  2. #2
    Membre actif Avatar de DAB.cz
    Inscrit en
    Octobre 2006
    Messages
    221
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 221
    Points : 249
    Points
    249
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    create or replace PROCEDURE read IS
    tmpVar NUMBER;
    p_fic utl_file.file_type;
     
    BEGIN
       p_fic := UTL_FILE.FOPEN('/temp','myfile.txt','a');
    END ;
    Ce n'est pas la procédure, c'est la fonction retournant la valeur.

    DAB

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2005
    Messages
    73
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 73
    Points : 82
    Points
    82
    Par défaut
    Hello


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    create directory TEMP as '/tmp';
     
    DECLARE
    p_fic utl_file.file_type;
    BEGIN
       p_fic := UTL_FILE.FOPEN('TEMP','myfile.txt','a');
    END;
    /

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 02/08/2018, 11h04
  2. Réponses: 34
    Dernier message: 24/09/2014, 20h26
  3. [Turbo Pascal] Le paramètre passé à une procédure n'est pas modifié
    Par med.ycf dans le forum Turbo Pascal
    Réponses: 2
    Dernier message: 15/02/2014, 17h49
  4. l'executable n'est pas une win32 valide
    Par joebilou dans le forum Windows
    Réponses: 4
    Dernier message: 28/06/2005, 11h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo