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

InterBase Discussion :

IBDataset et date


Sujet :

InterBase

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    1
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 1
    Points : 2
    Points
    2
    Par défaut IBDataset et date
    Salut et bonjour à tous.

    Voila, j'ai un problème concernant les dates dans une requette SelectSQL d'un IBDataset.
    Je précise : je veux que mon IBDataset affiche les champs de type "Date" dont la date est inférieur à une date données. Voici le code utilisé :

    Code delphi : 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
    var
      s_date :TDateTime;
     
    begin
     
      s := 'Select * From "CLIENTS"';
      s := s + ' Where DATE_VISITE <= ' + DateToStr(s_date);
      s := s + ' Order By DATE_VISITE';
     
      with DataClients.ibdClients do
      begin
        Close;
        SelectSQL.Clear;
        SelectSQL.Add(s);
        Open;
      end;
     
    end;

    ibdClients est le nom de mon IBDataset.

    et un grand merci à vous !

  2. #2
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Salut

    Pour éviter ce genre de soucis (format de date), il est préférable d'utiliser une requête paramétrée.
    Code delphi : 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
    var
      s_date :TDateTime;
     
    begin
     
      s := 'Select * From "CLIENTS"';
      s := s + ' Where DATE_VISITE <= :DateVisite';;
      s := s + ' Order By DATE_VISITE';
     
      with DataClients.ibdClients do
      begin
        Close;
        SelectSQL.Clear;
        SelectSQL.Add(s);
        ParamByName('DateVisite').AsDate := s_date;
        Open;
      end;
    end;

    @+ Claudius

  3. #3
    Nouveau membre du Club
    Inscrit en
    Novembre 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 43
    Points : 30
    Points
    30
    Par défaut
    Salut

    c'est trés gentil de votre part, Cl@udius. et ça à marché !

    mais, j'ai une petite remarque : est-ce sont obligatoires les deux points-virgule à la fin de cette ligne ?

    Code delphi : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
      s := s + ' Where DATE_VISITE <= :DateVisite';;

    =============================================
    kabakas

  4. #4
    Expert éminent sénior
    Avatar de Cl@udius
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2006
    Messages
    4 878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2006
    Messages : 4 878
    Points : 10 008
    Points
    10 008
    Par défaut
    Citation Envoyé par kabakas Voir le message
    est-ce sont obligatoires les deux points-virgule à la fin de cette ligne ?
    Non pas du tout ! Un seul est suffisant bien entendu.

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

Discussions similaires

  1. Réponses: 11
    Dernier message: 23/07/2002, 14h33
  2. soustraire deux dates ?
    Par joejoe dans le forum SQL
    Réponses: 2
    Dernier message: 19/07/2002, 15h53
  3. Generation d'evenements a une date precise
    Par pascalzzz dans le forum MFC
    Réponses: 2
    Dernier message: 04/06/2002, 15h21
  4. Réponses: 3
    Dernier message: 06/05/2002, 18h24
  5. Réponses: 3
    Dernier message: 19/04/2002, 00h11

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