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

C++Builder Discussion :

Requete sur champ Date


Sujet :

C++Builder

  1. #1
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut Requete sur champ Date
    Bonjours à tous,

    J'ai une application de gestion, je fait une requette SQL pour sélectionner des enregistement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
      String Req ;
      Word Year, Month, Day ;
      DecodeDate(Fm_Choisir_Date -> MonthCalendar1 -> Date, Year, Month, Day);
     
      Req = "Select * from Incidents where MONTH(Incidents.Date)=" + IntToStr(Month) + "\nAND " +
                                            "DAY(Incidents.Date)=" + IntToStr(Day) + "\nAND " +
                                            "YEAR(Incidents.Date)=" + IntToStr(Year) ;
      DataModule1 -> Rapport_Journalier -> SQL -> Clear() ;
      DataModule1 -> Rapport_Journalier -> SQL -> Add(Req) ;
      DataModule1 -> Rapport_Journalier -> Open() ;
    ça marche bien,

    mais quand j'utilise le code suivant pour une requette entre deux dates, il nya pas de résultat.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
      String Req,d1,d2 ;
      d1 = FormatDateTime("MM/DD/YYYY",Fm_Choisir_Deux_Date -> MonthCalendar1 -> Date) ;
      d2 = FormatDateTime("MM/DD/YYYY",Fm_Choisir_Deux_Date -> MonthCalendar2 -> Date);
      Req = "Select * from Incidents where Incidents.Date between #" +
             d1 +"# and #" +
             d2 +"#" ;
     
      DataModule1 -> Rapport_Journalier -> SQL -> Clear() ;
      DataModule1 -> Rapport_Journalier -> SQL -> Add(Req) ;
      DataModule1 -> Rapport_Journalier -> Open() ;
    Pouvez-vous m'aider à résoudre ce problème.

    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  2. #2
    Membre expérimenté
    Avatar de bakaneko
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 268
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 268
    Points : 1 427
    Points
    1 427
    Par défaut
    Tu peux me dire pourquoi tu fais un ExecSQL après un Open???
    + + +

  3. #3
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonjour,

    Désolé, j'ai oublié de mettre cette ligne en comentaires. Maintenant c'est corrigé.

    Q: POURQUOI Y A T'IL SI DE PROBLEME AVEC DES REQUETTES SUR DES CHAMPS DATE

    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  4. #4
    Membre habitué
    Inscrit en
    Octobre 2002
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 343
    Points : 152
    Points
    152
    Par défaut
    Ta requête fonctionne bien chez moi. Je récupère bien ce dont j'ai besoin. Au niveau SQL, je ne crois pas que t'es un souci. Essaie de voir autour, c'est à dire de vérifier directement sous ton sgbd (access, mysql, etc.) que ta requête renvoie bien des réultats. Si c'est le cas, je ne sais pas trop, vérifie que tu as bien des bonnes valeurs dans d1 et d2, ou utilise des types AnsiString... Mais sous ma base access, ce type de requête fonctionne sans souci.

    Je fais plus simplement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    Query->Active = false;
    Query->SQL->Clear();
    Query->SQL->Add(req);
    Query->Active = true;
    Essaie aussi d'écrire la requête directement dans une AnsiString en mettant des dates à la mains (c'est à dire sans utiliser les fonctions FormatDateTime, mais #01/01/2005# par exemple).

    Bon courage

  5. #5
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonjour,

    Oui maintenant ça marche.

    Merci.

    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  6. #6
    Membre habitué
    Inscrit en
    Octobre 2002
    Messages
    343
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 343
    Points : 152
    Points
    152
    Par défaut
    N'oublie pas de mettre le tag

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

Discussions similaires

  1. [AC-2010] Requete Sur Champ Date Formulaire
    Par piwa6291 dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 11/06/2014, 09h21
  2. requete Update sur champ date vide
    Par tarmo57 dans le forum Débuter
    Réponses: 10
    Dernier message: 28/04/2011, 19h01
  3. Requete sur champ de date
    Par cryptorchild dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 25/09/2006, 16h45
  4. Problème sur une requete avec champ date
    Par islande dans le forum Access
    Réponses: 2
    Dernier message: 21/09/2006, 19h39
  5. Requete sur champ DATE MySQL
    Par tom06440 dans le forum Requêtes
    Réponses: 3
    Dernier message: 17/09/2006, 17h45

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