Probleme requete SQL

Signaler
-
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
-
Bonjour,

J'ai un soucis avec le code que j'ai écris :


On Error Resume Next

rst.Close

Date_Deb = DTPicker1.Value
Date_fin = DTPicker2.Value


req = "SELECT Num_Facture, Code_Client, Date_Achat, Code_Ref, Designation, Qte from Facture where Date_Achat BETWEEN " & Date_Deb & " AND " & Date_Fin

rst.Open req, con

If rst.RecordCount > 0 Then
Set DataGrid1.DataSource = rst
End If


Normalement Le DataGrid doit afficher des lignes mais là aucun résultat quand je clique sur le bouton y a rien, mais quand je change la requête par celle-ci :


req = "SELECT Num_Facture, Code_Client, Date_Achat, Code_Ref, Designation, Qte from Facture where Code_Client = 00011"
ce code donne tout de suite un résultat sur le datagrid.

PS: j'avais enlever le On Error pour voir si il y a erreur mais ca n'a donner aucune erreur et rien sur le DataGrid.

Merci d'avance.

2 réponses

Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
18
Tu pourrais aussi essayer en mettant des #
 where Date_Achat BETWEEN #" & Date_Deb & "# AND #" & Date_Fin & "#"

Mais, en principe, tes dates doivent être au format américain dans tes variables: mmjjaaaa

Tu peux aussi "caster" tes dates en Long
 where Date_Achat BETWEEN " & CLng(Date_Deb) & " AND " & CLng(Date_Fin)
--
MPi²
Messages postés
31153
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 janvier 2021
342
Bonjour,

1- As tu regardé ce que valent tes variables Date_Deb et Date_Fin?
(sont elles en format datetime ? ( yyyy-mm-dd HH:MM:ss )

2 - As tu testé ta requête en direct dans ta BDD ?

3 - As tu essayé en ajoutant des quotes autour de tes dates ?
SELECT Num_Facture
        , Code_Clien t
        , Date_Achat
        , Code_Ref
        , Designation
        , Qte from Facture 
where Date_Achat BETWEEN '" & Date_Deb & "' AND '" & Date_Fin & "'"