Reqête SQL anec clause Where sur champ de type date
arystoc
Messages postés41Date d'inscriptionmercredi 2 juillet 2003StatutMembreDernière intervention16 juillet 2006
-
22 nov. 2004 à 15:14
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
22 nov. 2004 à 17:45
Bonjour,
J'ai une base de données sous accès, mon appli en VB6. Dans une de mes tables, il ya un champ de type "Date/Heure".
Lorsque je lance ma requête "select * from nomtable where champdate=ValeurSaisieDeTypeDate", le résultat indique qu'il n'ya rien.
Par contre, si je change le type du champ en "Texte", et je lance ma requête "select * from nomtable where champdate = 'ValeurSaisieDeTypeString'", j'ai bien des éléments dans mon recordset, mais je ne peut pas traiter la clause "Where champDate between 'Valeur' and 'Valeur2'".
Comment je dois faire ?
Merci de votre aide
A voir également:
Reqête SQL anec clause Where sur champ de type date
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 22 nov. 2004 à 17:45
Salut arystoc
Les dates, éternel problème.
Plusieurs tests à faire :
-1- Comme écrit dans l'aide, dans les requètes SQL, les dates doivent être encadrés par des # (comme les ' pour les chaines)
Exemple :
"... Where MaDate > #" & MaVar & "#"
Mais se pose le problème de format de date, car les # convertissent les dates du format local vers le format US, et le problème est que la conversion ne se fait pas toujours (si le jour est inférieur ou égal à 12) car il pense que c'est le mois.
-2- Utilisation de DateValue et TimeValue :
Essaye ce genre de syntaxe :