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

JDBC Java Discussion :

probleme Date MySQL


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2006
    Messages
    67
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 67
    Points : 35
    Points
    35
    Par défaut probleme Date MySQL
    Bonjour,

    Dans ma base MSQL, j'ai un champ de nom date_entree typé Date.

    Je tente d'inserer une date au format dd/mm/yyyy.

    Pour l'insertion en base, je me base sur une chaine (ex: 10/01/2007)
    Lorsque j'insére cette chaine en base, la valeur du champ typé Date est 0000-00-00.

    J'ai tenté ca :
    String maDate = "14/02/2008";
    SimpleDateFormat sdf = new SimpleDateFormat("yyy/MM/dd");

    Je passe dans ma requete => sdf.parse(maDate);

    Et en base, j'obtiens 0000-00-00

    Quelqu'un peut m'aider, merci ...

  2. #2
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Citation Envoyé par babalastar
    J'ai tenté ca :
    String maDate = "14/02/2008";
    SimpleDateFormat sdf = new SimpleDateFormat("yyy/MM/dd");

    Deja ce que tu as écrit ne peux pas fonctionner.
    Ecrit au moins quelque chose de cohérent.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    String maDate = "2008/02/14";
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  3. #3
    in
    in est déconnecté
    Membre expérimenté Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Points : 1 718
    Points
    1 718
    Par défaut
    [QUOTE=babalastar
    Je tente d'inserer une date au format dd/mm/yyyy.
    [/QUOTE]

    les dates SQL n'ont pas de format. C'est à l'affichage que tu choisis comment visualiser la date. Pas à l'insertion.

    Comment essaie tu d'insérer ta date ? Pourquoi insérer une chaine de caractère et pas une Date. Ca fonctionnerait surement mieux ...
    "If email had been around before the telephone was invented, people would have said, 'Hey, forget email! With this new telephone invention I can actually talk to people!"

    Besoin d'une nouvelle méthode pour développer ? -> http://www.la-rache.com/

  4. #4
    Membre expérimenté Avatar de maxf1
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 229
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 229
    Points : 1 371
    Points
    1 371
    Par défaut
    Citation Envoyé par in
    Pourquoi insérer une chaine de caractère et pas une Date. Ca fonctionnerait surement mieux ...
    Entierement d'accord
    Et la pas d'erreur possible!!
    Une solution a été apporté pour résoudre votre problème alors vous aussi faites en profitez les autres grâce au tag qui se trouve tout en bas de la page....

    Merci de ne pas utiliser les messages privés pour un problème sauf si je vous l'ai explicitement demandé.

    -- Maxf1 --

  5. #5
    Membre régulier
    Homme Profil pro
    Inscrit en
    Octobre 2006
    Messages
    124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 124
    Points : 120
    Points
    120
    Par défaut
    Si tu veux ajouter ou modifier une date dans une base MySQL avec une date sous la forme d'une chaine de caractères, ta chaine doit respecter le format suivant :
    yyyy-mm-dd
    par exemple, la chaine de caractères pour la date du 10 janvier 2007 devra être "2007-01-10"

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 100
    Points : 116
    Points
    116
    Par défaut
    bigben99 a écrit :
    ta chaine doit respecter le format suivant : yyyy-mm-dd
    Ou alors dans ta requête d'insertion pour ton champ date tu fais str_to_date('ta valeur', 'ton format');

    ex
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    str_to_date('20070112', '%Y%d%m');

  7. #7
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Tu veux passer par une chaîne qui contient ta requête sql ou tu peux passer par un preparedStatement ?

    Si tu es obligé de passer par une chaîne, je te conseil la forme champDate= { d'2007-01-05' } qui passe quelque soit le format de la base.
    Avec SimpleDateFormat (2) tu peux passer d'un format à l'autre... mais c'est pas top.

    Avec un preparedStatement, tu utilises le pstmt.setDate( numéroParametre, objetDate ).
    Là, tu n'utiliseras SimpleDateFormat qu'une fois pour parser le String en Date.

    A+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [SQLSERVER2000] date mysql => datetime = probleme :s
    Par MeHo_ dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 06/03/2008, 17h00
  2. Probleme DATE - base MySQL
    Par Donald08 dans le forum SQL Procédural
    Réponses: 18
    Dernier message: 26/07/2006, 07h53
  3. [VS2005][VB.NET] Probleme date mysql
    Par hellmer dans le forum Windows Forms
    Réponses: 1
    Dernier message: 04/06/2006, 20h19
  4. probleme date et heure avec mysql.
    Par argon dans le forum Langage SQL
    Réponses: 1
    Dernier message: 11/07/2005, 22h42
  5. Probleme avec Mysql
    Par kevinss dans le forum Administration
    Réponses: 5
    Dernier message: 31/10/2003, 10h43

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