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 Firebird Discussion :

condition Where dynamique dans une procedure stockée


Sujet :

SQL Firebird

  1. #1
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut condition Where dynamique dans une procedure stockée
    Salut à tous,

    J'ai une procedure stocké come suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    CREATE PROCEDURE GET_LIST (
                     MACHINE VARCHAR(20),
                     ETAT       CHAR(2) ,
                     CLIENT    VARCHAR(50),
                     MARQUE  VARCHAr(15))
              RETURNS(
                      ......
                       )
    Je voudrais en faites que en fonction de la valeur des paramètres d'entrée (null ou pas), la condition where de mon select change .(du genre if (is null MACHINE) then WHERE ....)

    Est ce possible avec Interbas 6.

    Merci
    On progresse .....

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 903
    Points : 6 027
    Points
    6 027
    Par défaut
    Il me semble que oui ....

    As-tu lu le tuto sur les procs stockées disponible sur developpez ?

    La réponse s'y trouve, genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IF MACHINE = "" THEN......
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  3. #3
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Non ce n'est pas possible sous IB6, car celà reviendrait à faire du SQL dynamique.

    Il faut donc utiliser des if then suivi de la requete complete.

    Ce qui fait 15 requetes possibles avec 4 paramètres dont au moins un d'obligatoire. désolé pour la mauvaise nouvelle...

  4. #4
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut
    Merci pour l'info Barbibulle,
    Je m'en doutais un peu mais c'est pas grave. Mais il parait que sous Firebird, ce serais peut être possible ... : : :
    Sinon, comment peut-on tester qu'une paramètre d'une procedure stocké est null. J'ai procedé comme suit mais j'ai une errreur de compilation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     if (is null MACHINE) then
    Merci pour l'iade
    On progresse .....

  5. #5
    Membre expert
    Avatar de Barbibulle
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    2 048
    Détails du profil
    Informations personnelles :
    Âge : 54
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 2 048
    Points : 3 342
    Points
    3 342
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (MACHINE is null) then ...

  6. #6
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut
    Merci Barbibulle,
    Tu me sauve tjs la vie.
    J'espère que je t'en revaudras ça un jour.

    A+
    On progresse .....

  7. #7
    Membre éprouvé
    Avatar de Andry
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2002
    Messages
    1 164
    Détails du profil
    Informations personnelles :
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2002
    Messages : 1 164
    Points : 1 181
    Points
    1 181
    Par défaut
    Bon, j'ai quand même une souci :
    Au départ il etais convenu que au moin l'un des paramètre est not null.
    Mais plus tard, ce n'est plus vrai, que les 4 paramètre peut être tous nulli.
    Le hic c'est que la dernière ligne recupéré est en double.
    Je ne sais pas d'ou viens ce doublon.
    SI vous voulez, je mettrais le code qui est assez long ici.

    Merci
    On progresse .....

Discussions similaires

  1. champ dynamiques dans une procedure stockée
    Par augereau dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/11/2005, 07h52
  2. SQL dynamique dans une procédure stockée
    Par Amnesiak dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 15/07/2005, 15h17
  3. Réponses: 3
    Dernier message: 21/09/2004, 07h35
  4. Réponses: 6
    Dernier message: 05/08/2004, 13h15
  5. Probleme dans une procedure stockée
    Par malbaladejo dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 07/07/2004, 14h08

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