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

Bases de données Delphi Discussion :

Conversion texte en date avec SQL delphi


Sujet :

Bases de données Delphi

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2012
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2012
    Messages : 8
    Points : 8
    Points
    8
    Par défaut Conversion texte en date avec SQL delphi
    Bonjour,

    Voila, alors je développe une petite application sous delphi XE2, j'utilise des connections ADO sur une base de données ACESS et j'utilise des requêtes SQL pour mes besoins. Toutes les données (tous les champs) de ma table sont de type "Texte" y compris le champ date (qui vient sous la forme 12/12/2012 12:12:12).
    Je voudrais créer des filtres sur la date, mais le problème c'est que comme le champ date est de type texte, il me faudrait un moyen pour convertir au moment de filtrer, j'ai essayé ça mais ça ne marche pas:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Adoquery1.sql.text:=' SELECT * FROM [Archive] where TO_DATE ( left([Champdate],10), 'dd/mm/yyyy') > ''01/12/2012'' ';
    adoquery1.active:=true;
    et la j'ai une erreur me disant que TO_DATE est non définie.

    Est ce que quelqu'un pourrait m'aider à résoudre mon problème svp ? mêmeen utilisant une autre méthode..

    Merci d'avance.
    Cordialement.

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 447
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 447
    Points : 24 844
    Points
    24 844
    Par défaut
    TO_DATE n'est pas plutôt ORACLE ?

    Citation Envoyé par DAEM86 Voir le message
    Toutes les données (tous les champs) de ma table sont de type "Texte" y compris le champ date (qui vient sous la forme 12/12/2012 12:12:12).
    Mauvais choix !

    Consulte le datetime query ado datetimetostr
    Tu pourras y trouver un début de réponse

    je te conseille de changer tes champs Date en VRAI Date et d'utiliser Parameters comme dans cette excellente réponse d'aityahia dans le sujet Requête SQL via les composants ADO sur une Table Access 97
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mai 2014
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Algérie

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2014
    Messages : 3
    Points : 4
    Points
    4
    Par défaut voici ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var
      myDate : TDateTime;
     
    begin
      myDate := StrToDate('13/02/2002');
      ShowMessage('myDate = '+DateToStr(myDate));
    end;
    sinon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    var
      myDate : TDateTime;
     
    begin
      myDate := StrToDateTime('09/02/2002 12:00');
      ShowMessage('Middle of a day = '+DateTimeToStr(myDate));
     
      myDate := StrToDateTime('09/02/2002 00:00');
      ShowMessage('Start  of a day = '+DateTimeToStr(myDate));
    end;

Discussions similaires

  1. Problème conversion texte en numérique avec SQL
    Par acquistapace dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 23/01/2013, 09h31
  2. Réponses: 6
    Dernier message: 10/08/2006, 15h45
  3. Date avec SQL Server
    Par RodEpsi dans le forum WinDev
    Réponses: 5
    Dernier message: 12/05/2006, 17h10
  4. Comment utiliser Between entre 2 dates en SQL DELPHI/Paradox
    Par tarbala dans le forum Bases de données
    Réponses: 4
    Dernier message: 12/04/2006, 10h33
  5. Gérer les dates avec SQL Server 2000
    Par saby dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 25/01/2006, 18h06

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