Bonjour,
j'utilise une requête SQL pour extraire des enregistrements de ma table que je transfert dans un recordset de type DAO. Dans ma requête, j'ai plusieurs critères de recherche (dans ma clause WHERE) tous liés entre eux par des et logique "And". En voici un exemple :
enregistrement = table.OpenRecordset("SELECT * FROM MATERIEL WHERE MATERIEL.param1 = 'A' And MATERIEL.param2 = 'B' ... And MATERIEL.param3 = 'C'", dbOpenSnapshot)
Or, il est fréquent que 2 enregistrements soient identiques en tout point, sauf pour le dernier paramètre (param3). J'utilise une condition sur recordcount pour savoir si la recherche a donnée un résultat positif. Or, j'aimerais pouvoir proposer à l'usager un autre choix si c'est seulement le dernier paramètre qui ne rempli pas les conditions fixées par la recherche.
J'ai déjà élaboré un petit script dans lequel je lance la requête une première fois, puis une deuxième sur échec en changeant la valeur du paramètre 3 (car il ne peut prendre que 2 valeurs). Ainsi, je peux savoir si c'est ce paramètre qui pose problème et proposer un 2e choix à l'usager.
J'aimerais cependant savoir s'il existe une solution moins lourde ou bien si j'ai entre les mains la méthode la plus efficace?
Merci beaucoup,
Partager