Remplir une base de données mySQL avec java

Blurock - 7 déc. 2012 à 16:39
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 10 déc. 2012 à 08:30
Bonjour,

Je commence depuis peu la programmation en java, et ceci est mon premier vrai programme. Le but de ce programme est de remplir une base de données chaque jour avec plusieurs fichiers txt rempli comme ceci :

"2";06/12/12;00:00:00;0;"mA"
"2";06/12/12;00:00:01;0;"mA"
"2";06/12/12;00:00:02;0;"mA"
Cela correspond à "numero";date;heure;valeur;..

Dans un premier temps, j'ai installé mySQL avec phpMyAdmin et j'ai créer une table "donnee" avec les quatre champs : numero(smallint);date(date);heure(time);valeur(int).

Puis, j'ai mis la bibliothèque jdbc dans java et j'ai coder en java une première partie pour me connecter à la base de données ce qui marche, mais je n'arrive pas à compléter ma base de donner pouvez-vous m'aider.

import java.sql.*;
import java.io.*;
import java.util.*;

public class SqlConnection {
public static void getConn () {
try {
System.out.println("Connection au driver JDBC");
Class.forName("com.mysql.jdbc.Driver").newInstance();
System.out.println("Driver com.mysql.jdbc.Driver chargé");
try {
System.out.println("Connection a la base de données");
Connection conn =
DriverManager.getConnection("jdbc:mysql://localhost/manouvellebase?user=root&password=");
System.out.println("Base de données connectée");
} catch (SQLException ex) {
// la connection a la base de données n'a pas pu etre établi
// voici les codes erreurs retournés
System.out.println("SQLException: " + ex.getMessage());
System.out.println("SQLState: " + ex.getSQLState());
System.out.println("VendorError: " + ex.getErrorCode());
}
} catch (Exception ex) {
// Le driver n'a pas pu être chargé
// vérifier que la variable CLASSPATH est bien renseignée
System.out.println("Echec de chargement du driver");
}

}

public static void Envoi_donnees () {

try { String strClassName = "com.mysql.jdbc.Driver";
String strUrl = "jdbc:mysql://localhost/manouvellebase?user=root&password=";


String strInsert = "INSERT INTO donnee "
+ "(Numero, Date, Heure, Valeur) " + "VALUES (0, '03/12/2012', 00:00:03, 1); //Exemple de valeur à charger, mais je ne sais pas comment le coder et comment faire pour qu'il fasse toute les lignes du fichier texte. Class.forName(strClassName);
Connection conn = DriverManager.getConnection(strUrl);

Statement stAddUser = conn.createStatement();
stAddUser.executeUpdate(strInsert);

conn.close();
}
catch(ClassNotFoundException e) {
System.out.println("SQLException: Not found");
} catch(SQLException e) {
System.out.println("SQLException: e ");
}

}
}

1 réponse

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
10 déc. 2012 à 08:30
Salut,

Essayes de convertir ta chaîne de caractère en date : http://pcaboche.developpez.com/article/mysql/fonctions-date-heure/?page=1#L1.3
0
Rejoignez-nous