Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour
connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est
Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN Table1
ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON
renseignement.id=Table2.Idr) LEFT JOIN Table3 ON
renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets en
forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN,
Renseignement.Critere1"
HClause = "HAVING (((renseignement.LN) = False) AND
((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");"
Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de
mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')"
GrouperPar = GrouperPar & ",Renseignement.AdresseMail"
'
RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des mails
:
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')"
'
RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes.
La 2ème me retourne quoiqu'il en soit 0
La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux requêtes
et ... elles fonctionnent très bien sous Access.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Clive Lumb
"N" a écrit dans le message de news:43de99e3$0$22438$
Bonjour,
Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN
Table1
ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON renseignement.id=Table2.Idr) LEFT JOIN Table3 ON renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets
en
forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN, Renseignement.Critere1" HClause = "HAVING (((renseignement.LN) = False) AND ((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");" Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')" GrouperPar = GrouperPar & ",Renseignement.AdresseMail" ' RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des
mails
:
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')" ' RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes. La 2ème me retourne quoiqu'il en soit 0 La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux
requêtes
et ... elles fonctionnent très bien sous Access.
Pourquoi cela ne fonctionne pas à partir de VB ?
Christian
Essayer avec des % à la place des *
"N" <pasdemail@marchepas.com> a écrit dans le message de
news:43de99e3$0$22438$626a14ce@news.free.fr...
Bonjour,
Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour
connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est
Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN
Table1
ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON
renseignement.id=Table2.Idr) LEFT JOIN Table3 ON
renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets
en
forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN,
Renseignement.Critere1"
HClause = "HAVING (((renseignement.LN) = False) AND
((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");"
Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de
mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')"
GrouperPar = GrouperPar & ",Renseignement.AdresseMail"
'
RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des
mails
:
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')"
'
RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes.
La 2ème me retourne quoiqu'il en soit 0
La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux
"N" a écrit dans le message de news:43de99e3$0$22438$
Bonjour,
Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN
Table1
ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON renseignement.id=Table2.Idr) LEFT JOIN Table3 ON renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets
en
forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN, Renseignement.Critere1" HClause = "HAVING (((renseignement.LN) = False) AND ((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");" Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')" GrouperPar = GrouperPar & ",Renseignement.AdresseMail" ' RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des
mails
:
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')" ' RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes. La 2ème me retourne quoiqu'il en soit 0 La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux
requêtes
et ... elles fonctionnent très bien sous Access.
Pourquoi cela ne fonctionne pas à partir de VB ?
Christian
Essayer avec des % à la place des *
Josselin JOUANNET
Peut tu afficher ta requette avant execution -- Cordialement Joss
"N" a écrit :
Bonjour,
Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN Table1 ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON renseignement.id=Table2.Idr) LEFT JOIN Table3 ON renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets en forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN, Renseignement.Critere1" HClause = "HAVING (((renseignement.LN) = False) AND ((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");" Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')" GrouperPar = GrouperPar & ",Renseignement.AdresseMail" ' RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des mails :
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')" ' RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes. La 2ème me retourne quoiqu'il en soit 0 La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux requêtes et ... elles fonctionnent très bien sous Access.
Pourquoi cela ne fonctionne pas à partir de VB ?
Christian
Peut tu afficher ta requette avant execution
--
Cordialement
Joss
"N" a écrit :
Bonjour,
Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour
connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est
Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN Table1
ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON
renseignement.id=Table2.Idr) LEFT JOIN Table3 ON
renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets en
forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN,
Renseignement.Critere1"
HClause = "HAVING (((renseignement.LN) = False) AND
((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");"
Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de
mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')"
GrouperPar = GrouperPar & ",Renseignement.AdresseMail"
'
RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des mails
:
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')"
'
RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes.
La 2ème me retourne quoiqu'il en soit 0
La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux requêtes
et ... elles fonctionnent très bien sous Access.
Peut tu afficher ta requette avant execution -- Cordialement Joss
"N" a écrit :
Bonjour,
Je créé plusieurs requêtes sous VB (en connexion ADO). Je m'en sert pour connaître le nombre de fiches trouvées. 4 tables composent ces requêtes.
La base de la requête est Rqrecherche = "SELECT Renseignement.Id FROM ((Renseignement LEFT JOIN Table1 ON renseignement.id=Table1.Idre) LEFT JOIN Table2 ON renseignement.id=Table2.Idr) LEFT JOIN Table3 ON renseignement.id=Table3.IdRens "
le code recherche les critères sélectionnés (20 possibles) puis les mets en forme SQL
La 1er cherche toute les fiches corespondantes aux critères :
GrouperPar = "GROUP BY Renseignement.Id, Renseignement.LN, Renseignement.Critere1" HClause = "HAVING (((renseignement.LN) = False) AND ((Renseignement.Critere1) = 12));
RqRecherche = RqRecherche & GrouperPar & HClause & ");" Avec un recorcount je récupère le nombre trouvé.
La troisième est sensé m'indiqué parmi ces fiches lesquelles n'ont pas de mails :
WClauseSm = HClause & " AND ((Renseignement.AdresseMail) NOT LIKE '*@*')" GrouperPar = GrouperPar & ",Renseignement.AdresseMail" ' RqSMail = rqRecherche & GrouperPar & WClauseSm & ");"
La deuxième est sensée m'indiquer parmi ces fiches lesquelles ont des mails :
WClauseAm = HClause & " AND ((Renseignement.AdresseMail) LIKE '*@*')" ' RqSMail = rqRecherche & GrouperPar & WClauseAm & ");"
Le souci se trouvant dans les deux dernières requêtes. La 2ème me retourne quoiqu'il en soit 0 La 3ème me retourne systèmatiquement le même nombre que la première.
J'ai testé la syntaxe en collant ces lignes SQL de chacune des deux requêtes et ... elles fonctionnent très bien sous Access.