Bonjour à tous,
Je commence à développer depuis peu de petites applications de base de données sous delphi 7 et et j'utilise Firebird 2 comme SGBD. Mon problème est le suivant:
je veux créer une requête qui va prendre en paramètre des Items qui sont cochés dans deux CheckListBox (Un pour la saison et un pour les marques) mais je ne sais pas en fait combien de choix l'utilisateur peut faire donc par mesure de securité j'utilise une requête avec 10 paramètres pour chaque attribut donc 20 au total.
Je penses que c'est pas assez efficace et je demande votre aide afin d'écrire une requête plus efficace.
Je vous remercie d'avance pour votre aide
Voici mon code SQL
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 select * from client ,commande,marque where ((client.codecli = commande.codecli)and(commande.idmarque = marque.idmarque)) /* Les P1 à P10 sont les champs que l'utilisateur aurra coché dan le CheckLisBox de la Saison*/ and ((commande.saison = :p1) or (commande.saison = :p2) or (commande.saison = :p3) or (commande.saison = :p4) or (commande.saison = :p5)or (commande.saison = :p6)or (commande.saison = :p7)or (commande.saison = :p8) or (commande.saison = :p9)or (commande.saison = :p10)); /* Les P1 à P10 sont les champs que l'utilisateur aurra coché dan le CheckLisBox de la marque*/ and ((commande.marque = p:1) or (commande.marque = :p2) or (commande.marque = :p3) or (commande.marque = :p4) or (commande.marque = :p5)or (commande.marque = :p6)or (commande.marque = :p7)or (commande.marque = :p8) or (commande.marque = :p9)or (commande.marque = :p10));
Partager