Requete SQL a perdre ses cheveux

Résolu
cs_ktastrof Messages postés 15 Date d'inscription lundi 10 février 2003 Statut Membre Dernière intervention 22 mai 2008 - 11 janv. 2005 à 10:07
cs_jcq Messages postés 211 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 15 janvier 2010 - 11 janv. 2005 à 17:26
J'ai besoin d'aiiiiiiiiiiiide svp.
J'ai une base de données access avec des champs au format texte dans lequelles j'écris des dates via : day(now()) & "/" & month(now()) & "/" & year(now())
Je n'arrive pas à faire un tri entre supérieur et inférieur.
J'explique la résultat que je souhaite et après je mets ma requete :
Je veux extraire les évenements entre 2 dates d'un client particulier. Or la base de prend en compte que la première date et non la deuxième. J'en ai marre !!!!.
Ma requete :
datum = day(now()) & "/" & month(now()) & "/" & year(now())
SQLQuery="SELECT*FROM annonce where (p_collectivite= " & p_username & ") AND (p_validite >= #" & datum & "# AND p_parution <= #" & datum & "#)"
Le résultat que j'obtiens est :
pas de résultat alors que :
datum = aujourd'hui
p_parution = 20/12/2004
p_validite = 15/3/2005
Je n'y comprend rien, svp. merci par avance.

4 réponses

cs_ktastrof Messages postés 15 Date d'inscription lundi 10 février 2003 Statut Membre Dernière intervention 22 mai 2008
11 janv. 2005 à 16:45
J'ai trouvé, ca pourrait servir à d'autres.
en fait il fallait que je change ma variable qui récupérait la date :
datum = day(now()) & "/" & month(now()) & "/" & year(now()) est faux
datum = month(now()) & "/" & day(now()) & "/" & year(now()) est bon

bon courage à tous
3
cs_jcq Messages postés 211 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 15 janvier 2010
11 janv. 2005 à 10:39
Ton format de date est incorrect, dans une base de donnée la date est stockée au format année/mois/jour ou mois/jour/année.
Ensuite pour faire des tests de date, il faut que ton champs soit au format date et non format texte (sinon impossible de faire une comparaison supérieur ou égal...)

Bart-Rennes
0
cs_ktastrof Messages postés 15 Date d'inscription lundi 10 février 2003 Statut Membre Dernière intervention 22 mai 2008
11 janv. 2005 à 10:58
Merci Jcq, mais j'ai changé mon champ access en date abrégée et lorque j'ouvre la base, la date apparait bien en jour, mois, année.
En fait je crois que ma requête a un problème car lorsque je met un seul prédicat, cela fonctionne. Lorsque je mets les 2 y a rien a faire.
Bizarre. Merci pour ton aide.
Je cherche encore.
0
cs_jcq Messages postés 211 Date d'inscription vendredi 12 décembre 2003 Statut Membre Dernière intervention 15 janvier 2010
11 janv. 2005 à 17:26
C'est comme je t'avais dit avant !!! Mois/jour/année



Bart-Rennes
0
Rejoignez-nous