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 :

Manipulation de Date dans MysQl avec Borland C++ Builder 6


Sujet :

C++Builder

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2011
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 5
    Par défaut Manipulation de Date dans MysQl avec Borland C++ Builder 6
    Salut à tous les développeurs. Je développe une application en BCB 6 sous WINDOWS et je fait des Sauvegardes de données dans une base de données MySql et je sauvegarde les date dans un format de type DATE avec la fonction NOW(); L'ors de la requête pour lire donc je spépécifie la date du jour avec le composant TDateTime->Date. Mais le résultat n'est pas n'est pas ce que j'attends aidez moi. je ne sais pas si je récupère mal la date ou alors j'ai un mauvais format de date. Je vous rapèle que quand je met la date manuellement le résultat est ce que j'attends. Aidez moi SVP.

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 003
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    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 : 14 003
    Par défaut
    NOW(); lequel
    NOW() du SQL ?
    Now() de la VCL ?

    Tu lis comment ? Requête paramètre avec AsDateTime ? tu construit la requêtre manuellemenet un DateToStr ou FormatDateTime

    En MySQL, le format de date c'est "YYYYMMDD" ou "YYYY-MM-DD", il faut éviter d'utiliser des formats régionaux tel que "DD/MM/YYYY" ou "MM/DD/YYYY"
    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
    Membre à l'essai
    Inscrit en
    Janvier 2011
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Janvier 2011
    Messages : 5
    Par défaut
    J'écris la date NOW() avec VCL et je lis avec le composant DateTimePicker

  4. #4
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 21
    Par défaut
    En effet, dans MySQL la date est au format yyyy-MM-dd.
    Pour enregistrer, j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
     Now().FormatString("yyyy-MM-dd")
    ou même :
     Now().FormatString("yyyy-MM-dd hh:mm:ss") si le champ MySQL est un DATETIME.]
    Ce format "yyyy-MM-dd" ne convient pas à un TDateTime.
    Lors d'une lecture il est possible d'effectuer une conversion à bon compte :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT DATE_FORMAT(ladate, '%d/%m/%Y') FROM latable ....
    Ce code renvoie une chaîne date à un format compréhensible pour le TDateTime.
    Si vous utilisez l'API, l'affectation au composant peut se faire comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    TDateTimePicker->Date = TDateTime(myROW[0], TDateTIme::Date);
    La fonction DATE_FORMAT est explicitée dans la doc MySQL 5, avec d'autres fonctions utiles comme SUBSTRING, CONCAT, LEFT...

Discussions similaires

  1. manipulation sur date dans une requête
    Par willis dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 06/07/2006, 15h43
  2. insertion date dans access avec code java
    Par voyageur dans le forum Access
    Réponses: 3
    Dernier message: 20/06/2006, 21h36
  3. Incapable d'insérer dans MySQL avec JDBC
    Par guillo14 dans le forum Requêtes
    Réponses: 4
    Dernier message: 11/06/2006, 01h26
  4. [Date dans Mysql] Prise en compte des espaces
    Par tchoukapi dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 02/01/2006, 03h41
  5. Comment stocker PROPREMENT "\\" dans mysql avec p
    Par jcachico dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 03/12/2005, 14h32

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