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

XMLRAD Discussion :

Procedures Stockees MySql


Sujet :

XMLRAD

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Février 2007
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 1
    Par défaut Procedures Stockees MySql
    Bonjour à tous,
    Lorsque que je lance une procedure stockee j'ai en retour le message suivant:

    TDacQuery.Open - TDacMySQLQuery.Open41 - PROCEDURE quest.LISTEFICHESCONSEIL can't return a result set in the given context
    Comment puis-je faire pour résoudre ce pb?

    D'avance, merci pour les conseils...

    Nb : voici le coprs de la procedure:
    ---------------------------------
    DELIMITER $$

    DROP PROCEDURE IF EXISTS `quest`.`ListeFichesConseil` $$
    CREATE DEFINER=`root`@`localhost` PROCEDURE `ListeFichesConseil`(pIdProcess int,pIdSousProcess1 int ,pIdTypeFibre int ,pIdFibre int )
    BEGIN
    IF pIdSousProcess1=0 OR pIdSousProcess1 = NULL THEN
    SET pIdSousProcess1 =1;
    END IF;
    IF pIdTypeFibre=0 OR pIdTypeFibre = NULL THEN
    SET pIdTypeFibre =1;
    END IF;
    IF pIdFibre=0 OR pIdFibre = NULL THEN
    SET pIdFibre =1;
    END IF;


    SELECT TFicheConseil.PathFiche,
    TFicheConseil.TitreFiche
    FROM TFicheConseil
    WHERE
    (ParamProcedNiv0 & POW(2,(pIdProcess)-1)!=0 )
    AND
    (ParamProcedNiv1 & POW(2,(pIdSousProcess1)-1) !=0)
    AND
    (ParamTypeFibre & POW(2,(pIdTypeFibre)-1)!=0)
    AND
    (ParamFibre & POW(2,(pIdFibre)-1)!=0);
    END $$

    DELIMITER ;
    ----------------------------------

  2. #2
    RDM
    RDM est déconnecté
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 424
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 424
    Par défaut
    comment lances-tu la procédure stockée ?
    normalement ca se fait en plusieurs requêtes:
    il faut passer les paramètres d'abord par des variables:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SET @pIdProcess=1001, @pIdSousProcess1=1002, ...
    puis appeler la procedure avec les variables:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CALL ListeFichesConseil(@pIdProcess, @pIdSousProcess1, ...)
    si la precedure renvoie un curseur rien d'autre a faire sinon faire un SELECT sur les variables de sorties.

    cf: http://dev.mysql.com/doc/refman/5.0/en/call.html

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/05/2011, 10h58
  2. [mysql]envoyer email depuis procedure stockee
    Par phicarre dans le forum SQL Procédural
    Réponses: 1
    Dernier message: 19/10/2009, 22h50
  3. appel procedure stockees de MySQL dans du java
    Par sfdiaw dans le forum JDBC
    Réponses: 5
    Dernier message: 16/06/2008, 18h14
  4. procedure stockee dans mysql
    Par helpcomm dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 15/03/2008, 10h15

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