IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

Probleme de requete SQL avec un champs date


Sujet :

ASP

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 14
    Points : 10
    Points
    10
    Par défaut Probleme de requete SQL avec un champs date
    Salut,

    Voici mon soucis :

    j'ai une table 't_date' dans laquelle se trouve les champs suivants :
    'ref_date' (ID)
    'semaine' (n° de la semaine de l'année)
    'lundi' (date du lundi correspondant à la semaine)
    'vendredi' (date du vendredi correspondant à la semaine)
    'findeperiode' (on s'en fout, pas important)


    Pour illustrer cela voilà ma base pour le mois de juin :

    n° semaine : 22 ; lundi 30/05/2005 au vendredi 03/06/2005
    n° semaine : 23 ; lundi 06/06/2005 au vendredi 10/06/2005
    n° semaine : 24 ; lundi 13/06/2005 au vendredi 17/06/2005
    etc....

    Je dois donc chercher le n° de la semaine correspondant à une date donnée, ce qui correspond à la requete suivante :

    "SELECT * FROM t_date WHERE #date_cherche# BETWEEN lundi AND vendredi "

    Alors selon ce que je mets j'ai un bon résultat, sinon j'ai aucun résultat dans le recordset (il me signale une erreur de end of file)...

    Je suppose que c'est dû à une erreur de syntaxe (du style mm/jj/aaaa....) mais j'ai bien vérifié je fonctionne bien en jj/mm/aaaa

    nb : ma base est sur access

    Merci de votre aide

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    367
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 367
    Points : 414
    Points
    414
    Par défaut
    Salut,

    si j'ai bien compris, c'est comme s'il y a vait une ambiguité sur la date si on est avant le 12 du mois, c'est interprété comme au format américain ?

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    tout à fait gwen, c'est exactement ca

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    367
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 367
    Points : 414
    Points
    414
    Par défaut
    J'ai utilisé cette fonction il y a un moment :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Function FrToUsDate(DateIn)
    	Dim intCpt
    	Dim JJ
    	Dim MM
    	Dim AAAA
    	Dim i
    	Dim intpos
    	Dim DateOut
    	intCpt = 1 'indice de la chaîne DateIn
    	Dim tabposition (2) ' sauve les position des caractères '/'
    	i=1 ' indice du tableau tabposition qui est incrémenté à chaque rencontre du caract. '/'
     
    	intPos = -1 'initialiser la position de l'élément à rechercher
     
    		While ( intPos <> 0 ) ' tant que pas fin de chaîne
        		intPos=InStr(intCpt, DateIn, "/")
     
        		If intpos <> 0 Then
        			 tabposition(i) = intPos
     			     intCpt = intPos + 1 'pour ne pas faire de boucle infinie 
        		End If 
     
        	i = i + 1
    		Wend
     
    JJ  = Left(DateIn,tabposition(1)-1)
    MM  = Mid(DateIn,tabposition(1)+1,(tabposition(2)-tabposition(1))-1)
    AAAA = Mid(DateIn,tabposition(2)+1,4)
     
    ' on formate la chaîne de sortie
    DateOut = MM & "/" & JJ & "/" & AAAA 
     
    FrToUsDate = DateOut
    End Function
    Mais il y a certainement plus simple. Dans la FAQ de ce site, on conseil d'utiliser un autre type de champs pour stocker les dates avec Access. Il y a aussi je crois une possibilité avec LICD. En tous cas, c'et bien access qui coince...

    bon courage

  5. #5
    Membre averti Avatar de niglo
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 379
    Points : 383
    Points
    383
    Par défaut Re: Probleme de requete SQL avec un champs date
    Citation Envoyé par ju360modena
    "SELECT * FROM t_date WHERE #date_cherche# BETWEEN lundi AND vendredi "
    Pourquoi ne met tu pas un filtre du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT *
    FROM t_date
    WHERE format(date_cherche,'day') BETWEEN lundi AND vendredi"
    Renseigne toi sur la fonction format en SQL et tu auras la réponse sans te demander français ou anglais ???

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2005
    Messages
    14
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    ok merci tout le monde...

    Gwenn, j'ai utilisé le résultat de ta fonction dans ma requete...
    Lorsque la date avait un jour > à 12, ca marchait nikel (bonne conversion et bon résultat), tandis que lorsque je rentrais un jour < 12,là ca marchait plus et la conversion ne se faisait plus....

    Bref, j'ai changé le LCID (j'ai mis celui des ricains), et là ca marche (Session.LCID = 1033)...

    Merci beaucoup gwenn

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Requete sql sur un champ date
    Par scholes dans le forum JDBC
    Réponses: 9
    Dernier message: 14/05/2013, 11h35
  2. Besoin d'aide requete SQL avec un champ non associer
    Par java250r dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 09/04/2012, 17h02
  3. requete sql sur un champ date
    Par bullrot dans le forum C++Builder
    Réponses: 9
    Dernier message: 14/12/2007, 15h39
  4. [Access] requete sql avec condition sur date
    Par qeja dans le forum Langage SQL
    Réponses: 4
    Dernier message: 25/03/2006, 23h54
  5. Probleme de requete SQL avec la valeur NULL
    Par samyghan dans le forum Installation
    Réponses: 8
    Dernier message: 12/03/2006, 17h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo