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 :

Instruction 'open for'


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 113
    Par défaut Instruction 'open for'
    Bonjour,

    J'espére que je vous dérange pas, mais j'ai une petite question.
    J'ai commencé cette matinée à lire le cours PL SQL sur developpezpour voir les choses avec lesquelles j'ai jamais travailé.
    j'aitesté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    Declare
     
    Begin
       Open  C_EMP For 'Select ename From EMP Where empno = 1024' ;
       Fetch C_EMP Into LC$Nom_emp ;
       Close C_EMP ;
    End ;
    mais une erreur me dit que le curseur n'estpas déclarée.

    j'ai déclaré le curseur:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    Declare
     
    Begin
       Open  C_EMP For 'Select ename From EMP Where empno = 1024' ;
       Fetch C_EMP Into LC$Nom_emp ;
       Close C_EMP ;
    End ;
    et ça ne marche toujours pas.
    avez vous une idée de la solution?
    Merci d'avance

  2. #2
    Membre extrêmement actif
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Billets dans le blog
    6
    Par défaut open curor fetch
    Salem;
    si vous developpez des procedure stocke voici comme utiliser la methode de cursor declare.
    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
     
    create or replace procedure AAAA is
     
    TYPE cursor_type IS REF CURSOR;
     cursor_variable cursor_type;
     
     var varchar2(50);
     
    Begin
    NULL;
    open cursor_variable for select 'liste des champs'
                                    from dual
                                    ;
     
    LOOP
    FETCH cursor_variable INTO var;
    if cursor_variable%NOTFOUND then
     
    EXIT ;--SORTIE DE LA PROCEDURE 
    end if;
    end loop;
    dbms_output.put_line(var);
    end AAAA;
    j'espere que ca va vous aider.
    salut

  3. #3
    Membre extrêmement actif
    Avatar de islamov2000
    Homme Profil pro
    Ingénieur d'études & developpement en informatique
    Inscrit en
    Septembre 2007
    Messages
    814
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur d'études & developpement en informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2007
    Messages : 814
    Billets dans le blog
    6
    Par défaut open curor fetch
    re_salem;
    sinon voici une autre facon...
    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
     
    create or replace procedure AAAA is
     
     
    cursor  cursor_variable is select 'liste d66es champs'
                                    from dual;
     
     var varchar2(50);
     
    Begin
    NULL;
    open cursor_variable                                 ;
     
    LOOP
    FETCH cursor_variable INTO var;
    if cursor_variable%NOTFOUND then
     
    EXIT ;--SORTIE DE LA PROCEDURE 
    end if;
    end loop;
    dbms_output.put_line(var);
    end AAAA;
    bon courage.
    Salut

  4. #4
    Membre confirmé
    Inscrit en
    Novembre 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 113
    Par défaut
    Merci infiniment c'estla première utilisation que je connais pas, ce qui m'a échapé était:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    TYPE cursor_type IS REF CURSOR;
     cursor_variable cursor_type;

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

Discussions similaires

  1. [Turbo Pascal] Runtime error 105 - File not open for output
    Par infoz dans le forum Turbo Pascal
    Réponses: 8
    Dernier message: 03/06/2008, 15h48
  2. Instructions Open et Write #
    Par pedro4l dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/03/2008, 11h58
  3. 4D Open for 4D:pb OP Distinct Values
    Par Kendael dans le forum 4D
    Réponses: 3
    Dernier message: 20/04/2007, 12h43
  4. [vb6]=Probleme avec open for append
    Par prison_break dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 02/01/2007, 13h40
  5. Unable to open '' for reading: Permission denied
    Par Hi-CHAM dans le forum Langage
    Réponses: 5
    Dernier message: 11/10/2006, 21h21

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