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

Oracle Discussion :

Problème de Ref cursor


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 190
    Par défaut Problème de Ref cursor
    Bonjour,
    j'ai deux procédure stockées qui se base sur deux requêtes
    ils ont un paramétre de sortie de ce type

    les deux requêtes contenues dans ces procédures prennent 3 secondes

    le problème quand j'essaie d’exécuter la procédure sous le prompt pl/sql

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var param1 REFCURSOR;
    exec procedure1(:param1);
    print :param1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    var param2 REFCURSOR;
    exec procedure2(:param2);
    print :param2
    la premiere prend le temps d’exécution de sa requete pour m'afficher le resultat , soit 3 secondes


    par contre la deuxieme prend 5 mn !!!!!!!!!!!!!!!

    et le probleme c'est que cet appel me geneere un timeout coté serveur

    quelqu'un aurait une explication

    Merci

  2. #2
    Membre Expert
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2012
    Messages
    652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Février 2012
    Messages : 652
    Par défaut
    Avec le plan d'exécution des deux requêtes, oui il y aura probablement un début d'explication

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 190
    Par défaut
    Plan d'execution sur quoi ???
    comprends la question avant de répondre
    j'ai dit si je passe les deux requetes a part , les deux prennent 3 seconde

  4. #4
    Membre Expert
    Inscrit en
    Août 2009
    Messages
    1 073
    Détails du profil
    Informations forums :
    Inscription : Août 2009
    Messages : 1 073
    Par défaut
    Citation Envoyé par sallemel Voir le message
    la premiere prend le temps d’exécution de sa requete pour m'afficher le resultat , soit 3 secondes


    par contre la deuxieme prend 5 mn !!!!!!!!!!!!!!!

    et le probleme c'est que cet appel me geneere un timeout coté serveur

    quelqu'un aurait une explication

    Merci
    Peut-être un problème de mémoire ... Essayez de fermer le curseur param1 avant d'ouvrir celui de param2.

  5. #5
    Membre Expert
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Février 2012
    Messages
    652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Février 2012
    Messages : 652
    Par défaut
    comprends la question avant de répondre
    j'ai dit si je passe les deux requetes a part , les deux prennent 3 seconde
    Je comprend bien la question, j'aimerais juste savoir si Oracle "ne perd pas pied" lors des exécutions dynamiques

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    190
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 190
    Par défaut
    @Rei Ichido,
    Merci pour ta réponse

    en fait c'est ce que j'avais comme piste
    mais si j’exécute d'autres procédures, ca passe sans problème
    il mouline plus que 5 mn que pour la deuxième

    Cordialement

  7. #7
    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
    Arrêtez de deviner! Faite une trace pour savoir!
    Vous donnez très peu des informations et vous nous demandez de vous dire ce qui se passe comme les mentalistes ou les criminels profiler à la Télé!
    Votre requête utilise des variables de liaison ou pas ?
    Quand vous la testez vous passez des littéraux ou des variables de liaison ? Quand vous testez votre requête les 5 secondes sont pour avoir quelques résultat ou tous les résultat ?
    Quelle est votre version d'Oracle ?
    Comment savez vous que le temps passe dans la requête?
    Qu'est ce que votre procédure fait de plus que d'ouvrir le curseur?
    etc.

Discussions similaires

  1. REF CURSOR en package et block anonyme
    Par Jean_Benoit dans le forum SQL
    Réponses: 1
    Dernier message: 01/09/2007, 18h34
  2. [PL/SQL] Ref Cursor
    Par duboisfa dans le forum Oracle
    Réponses: 1
    Dernier message: 24/02/2006, 16h15
  3. [817] procédure avec REF CURSOR en paramètre
    Par Bourbigot dans le forum Oracle
    Réponses: 8
    Dernier message: 19/01/2006, 10h42
  4. [forms] ref cursor associé à un bloc de données
    Par plaineR dans le forum Forms
    Réponses: 9
    Dernier message: 27/08/2004, 18h26
  5. REF CURSOR... Comment ça marche ?
    Par Patkaza dans le forum SQL
    Réponses: 6
    Dernier message: 28/04/2004, 14h26

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