DateTime Requêtes Access SQL

[Résolu]
Signaler
Messages postés
52
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
14 octobre 2007
-
Messages postés
52
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
14 octobre 2007
-
Bonjour

Pour simplifier à son maximum.

Mettons je crée une BD Access
La table "A" avec une clef primaire et le champ "Allo" définis comme était Date/Time Général

Je crée une requête directement dans ma BD Access qui dit ce qui suis

SELECT *
FROM A
WHERE Allo>='2007-01-01' And Allo<'2007-01-02';

Ca me donne le msg d'erreur:
"Type de données incompatible dans l'expression du critère."

Ca fait 3 heure je cherches sur des sites internet et ça me donne tous la même requête SQL à faire
Ya plusieurs façon mais aucune fonctionne
Access semble pas comprendre CAST
Dès que je met ma date entre apostrophe, ca me donne une erreur, mais si je la met pas, on dirais que ca fonctionne comme si c'étais un chiffre
Alors le Between m'aide pas plus

Quelqu'un a une idée avant que je balance mon ordi par la fenêtre?

4 réponses

Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
Salut,
si tu avais bien cherché ne serait-ce qu' une minute ,
tu serais tombé certainement sur:
> Il faut utiliser # de part et d' autre de t'expression  pour qu' elle
soit interprètée comme date.


SELECT *
FROM A
WHERE Allo>=#2007-01-01# And Allo<#2007-01-02#;





<hr />

I LIKE TO BE HERE WHEN I CAN


<hr />
Messages postés
52
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
14 octobre 2007

Kewl thanks même si ton commentaire était ironique :P
M'a vérifier ça demain matin

Si je comprends bien Access utilise les # et SQL Serveur les ' ?
Messages postés
1883
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2
Désolé pour le commentaire...
Je ne voulais pas mettre en doute le fait que tu as cherché ailleurs,
mais le fait est que tu as dû mal cherché, surtout sur ce forum.
La question revient si souvent qu' on s' étonne qu' elle soit encore posée.
Pour la question SQL SERVEUR et ACCESS, j' ose pas me pronnoncer sur SQL.
Mais je suis certain pour Access.Ce dernier interprète '2007-01-01' comme chaine de caractère.


D' un autre coté, regardes si le format de date dans les paramètres régionnaux est bien au format
désigné (2007-01-01).Les champs dates sont enregistrés au format courant.

Bonne continuation.


<hr />

I LIKE TO BE HERE WHEN I CAN


<hr />
Messages postés
52
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
14 octobre 2007

Parfait ca fonctionne
RapportBVDate  = Date de début (format "2007-01-01")
strDate = Date de fin

RapportBVDate = RapportBVDate & " 00:00:00"
strDate = strDate & " 23:59:59"
StrSQL_BV "SELECT * FROM DB_BV INNER JOIN DB_Type ON DB_BV.Type_ID DB_Type.ID WHERE DB_Type.Type = '" & rs_Type!Type & "' AND DB_BV.Date_Ouverture >= #" & RapportBVDate & "# AND DB_BV.Date_Ouverture <= #" & strDate & "#"