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 :

Insertion date courante dans base de données Oracle


Sujet :

JDBC Java

  1. #1
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 43
    Points : 22
    Points
    22
    Par défaut Insertion date courante dans base de données Oracle
    Bonjour,

    Je souhaiterais insérer la date courante sous le format "dd-MM-yyyy HH:mm:ss" dans une table d'une base de données Oracle à partir d'une méthode Java. J'ai essayé plusieurs méthodes différentes mais je ne parviens pas à mes fins.

    Merci de votre aide !

  2. #2
    Membre régulier Avatar de reno_tidus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 132
    Points : 122
    Points
    122
    Par défaut
    Rien de bien compliqué, les deux lignes suivantes devraient suffires.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    String requete1 = "insert into TA_TABLE values (sysdate, autres_valeurs)";
    int i = fiche.statement.executeUpdate(requete1);
    Vos questions, c'est sur le forum, pas de M.P.
    Commencez par lire la F.A.Q., rechercher dans le forum et dans les cours et surtout sur l'ami


    Une fois votre problème résolu n'oubliez pas le tag

    http://www.ententemontignyhandball.com/

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Tant qu'à faire, tu devrais utiliser un PreparedStatement, c'est mieux...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    PreparedStatement pstmt = connection.prepareStatement("insert into table(col1Int, col2Date) values(?, ?);
    pstmt.setInt(1, monInt);
    pstmt.setDate(2, new java.sql.Date(System.currentTimeMillis()));
    pstmt.execute();
    a+
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    Vos deux solutions marchent très bien mais ne m'insèrent pas une date au format "dd-MM-yyyy HH:mm:ss"

    Que faut-il ajouter / modifier ?

  5. #5
    Membre régulier Avatar de reno_tidus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 132
    Points : 122
    Points
    122
    Par défaut
    Est-ce que tu as vérifié la valeur inséré directement sur Oracle ou avec ton programme Java car si c'est avec ton programme Java, il se peut qu'il y est un problème d'affichage car j'ai déja utilisé ma méthode dans un programme et je suis quasiment certain qu'elle insere la date au format que tu souhaite.
    Si ça ne fonctionne pas je redémarreré Oracle pour vérifier.
    Vos questions, c'est sur le forum, pas de M.P.
    Commencez par lire la F.A.Q., rechercher dans le forum et dans les cours et surtout sur l'ami


    Une fois votre problème résolu n'oubliez pas le tag

    http://www.ententemontignyhandball.com/

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    J'ai vérifié la valeur insérée directement dans la base Oracle. Il n'y a que la date, pas l'heure.

  7. #7
    Membre régulier Avatar de reno_tidus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 132
    Points : 122
    Points
    122
    Par défaut
    Essai cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Date date = new Date();
    SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
    String strDate = sdf.format(date);
    
    et ensuite dans ta requete, tu remplace dans ta requête sysdate par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    String requete = "... VALUES(TO_DATE('" 
    + date 
    + "','DD/MM/YYYY HH24:MI:SS'), autres_valeurs...)";
    Vos questions, c'est sur le forum, pas de M.P.
    Commencez par lire la F.A.Q., rechercher dans le forum et dans les cours et surtout sur l'ami


    Une fois votre problème résolu n'oubliez pas le tag

    http://www.ententemontignyhandball.com/

  8. #8
    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
    Citation Envoyé par Niniz Voir le message
    J'ai vérifié la valeur insérée directement dans la base Oracle. Il n'y a que la date, pas l'heure.
    Il faut utiliser un timestamp et pas une date il me semble ...
    "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/

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

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Niniz Voir le message
    Vos deux solutions marchent très bien mais ne m'insèrent pas une date au format "dd-MM-yyyy HH:mm:ss"

    Que faut-il ajouter / modifier ?
    Tu veux dire que ton ihm te renvoie une date au format dd-MM-yyyy HH:mm:ss ?
    Dans ce cas (en reprenant le PreparedStatement), tu devrais faire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
    java.sql.Date aDate = new java.sql.Date( sdf.parse(laDate).getTime() );
    SimpleDateFormat retourne un java.util.Date et le preparedStatement attend un java.sql.Date, d'où la conversion...

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

  10. #10
    Membre à l'essai
    Inscrit en
    Juillet 2007
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 43
    Points : 22
    Points
    22
    Par défaut
    J'obtiens toujours une date dans ma base de données malgré les modifications .. Je pense que in voit juste, il faut utiliser un timestamp et non une date pour voir l'heure apparaître. Mais je n'ai pas le droit de changer le type de la date dans mon projet. Cela me paraît bien compromis ..

    Merci en tout cas pour toutes vos réponses et pour votre spontanéité !

Discussions similaires

  1. [MySQL] insertion valeur null dans base de données
    Par L.A.. dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 19/06/2015, 17h21
  2. [MySQL] Insertion lien image dans base de données
    Par Addict` dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 23/02/2009, 13h40
  3. [E-03] insertion de lignes dans base de données
    Par alainmante dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/10/2008, 18h01
  4. insertion de données dans Base de données Oracle 9
    Par hottnikks_79 dans le forum SQL
    Réponses: 2
    Dernier message: 16/03/2006, 00h07
  5. Réponses: 9
    Dernier message: 13/10/2005, 18h24

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