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 :

Cursor & Loop


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de blackhorus
    Inscrit en
    Février 2003
    Messages
    209
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 209
    Par défaut Cursor & Loop
    Supposons que j'ai le schéma suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     For... LOOP
        OPEN CUR1;
        FETCH CUR1 INTO Var ;
        CLOSE CUR1;
      END LOOP;
    Et supposons, qu'au deuxième passage dans le FOR...LOOP, le cursor ne trouve aucune occurence. Est-ce que la valeur de Var est nulle, ou elle garde l'ancienne valeur du précedent passage ?

  2. #2
    Invité
    Invité(e)
    Par défaut
    Tu ne penses pas que tu irais plus vite à faire le test qu'à attendre la réponse ?

  3. #3
    Membre expérimenté Avatar de blackhorus
    Inscrit en
    Février 2003
    Messages
    209
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 209
    Par défaut
    J'ai pas d'environnement de test devant moi. Une recherche sur google ne m'as pas trop aidé

  4. #4
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    http://www.developpez.net/forums/sho...d.php?t=287843

    et regarde le tuto PL/SQL parce que la syntaxe est perfectible

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par blackhorus Voir le message
    J'ai pas d'environnement de test devant moi. Une recherche sur google ne m'as pas trop aidé
    Tu fais du dév sans bd ?

  6. #6
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Sauf erreur de ma part, dans ce cas la valeur de la variable est tout simplement non défini. Désolé mais faire le test ne servent pas de preuve dans ce cas!

  7. #7
    Membre expérimenté Avatar de blackhorus
    Inscrit en
    Février 2003
    Messages
    209
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 209
    Par défaut
    Citation Envoyé par Jerome_Mtl Voir le message
    Tu fais du dév sans bd ?
    Jérome, je veux pas être méchant... Mais, comment dire, c'est quoi l'utilité de tes remarques.

    Je suis en ce moment entrain de tester avec le lien que m'as gentillement fourni orafrance.

  8. #8
    Expert confirmé Avatar de mnitu
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2007
    Messages
    5 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2007
    Messages : 5 611
    Par défaut
    Citation Envoyé par blackhorus Voir le message
    ...
    Je suis en ce moment entrain de tester avec le lien que m'as gentillement fourni orafrance.
    Comme je viens de le dire ce test ne vaut rien!

  9. #9
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par blackhorus Voir le message
    Jérome, je veux pas être méchant... Mais, comment dire, c'est quoi l'utilité de tes remarques.
    J'essaie de comprendre.

  10. #10
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2008
    Messages
    224
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2008
    Messages : 224
    Par défaut
    Citation Envoyé par blackhorus Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     For... LOOP
        OPEN CUR1;
        FETCH CUR1 INTO Var ;
        CLOSE CUR1;
      END LOOP;
    Je dirai juste que si tu fais ta boucle 2 fois comme tu le fais là, VAR aura 2 fois la même valeur vu que tu fermes et que tu réouvres ton curseur.

    Lors du premier tour il prendra le premier enregistrement et lors du deuxième vu que tu auras fermé ton curseur et que tu l'auras réouvert, il reprendra la première ligne du curseur donc il remettra la même valeur dans VAR.

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

Discussions similaires

  1. [ ORACLE ][ STRUTS ] [ JAVA ] maximum open cursor
    Par LoulouFifi dans le forum Struts 1
    Réponses: 21
    Dernier message: 30/03/2011, 11h52
  2. Principe de l'instruction LOOP
    Par mathk dans le forum Assembleur
    Réponses: 25
    Dernier message: 16/05/2004, 11h08
  3. REF CURSOR... Comment ça marche ?
    Par Patkaza dans le forum SQL
    Réponses: 6
    Dernier message: 28/04/2004, 14h26
  4. [Sybase] Select dans une select loop en C
    Par Claudio dans le forum Sybase
    Réponses: 2
    Dernier message: 29/04/2003, 18h06

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