Connexion à BDD mysql en java

amine_marc Messages postés 286 Statut Membre -  
amine_marc Messages postés 286 Statut Membre -
Bonjour,
je suis débutant en java, je veux se connecter à une base de données mysql à l'aide d'un code java (ci-dessous), mais le compilateur (Eclipse) signal un erreur dans la ligne " Class.forName("com.mysql.jdbc.Driver"); "

import java.sql.*;
import javax.sql.*;

public class Test {

public static void main(String[] args) {

String dbtime;
String dbUrl = "jdbc:mysql://localhost/ma_bdd";
String dbClass = "com.mysql.jdbc.Driver";
String query = "Select * FROM client";

try {

Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection (dbUrl);
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(query);

while (rs.next()) {
dbtime = rs.getString(1);
System.out.println(dbtime);
}

con.close();
}

catch(ClassNotFoundException e) {
e.printStackTrace();
}

catch(SQLException e) {
e.printStackTrace();
}


}


j'ai lu un tutoriel qui demande de mettre le le pilote dans le CLASPATH du projet, voila le son contenu :


<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="output" path="bin"/>
</classpath>



Le pilote que j'ai télécharger est nommé "mysql-connector-java-5.1.2" sachant que j'ai la version mysql "5.1.54".
Veulliez m'aider à résoudre ce problème et merci d'avance ^^
A voir également:

2 réponses

KX Messages postés 19031 Statut Modérateur 3 020
 
le compilateur (Eclipse) signal un erreur dans la ligne Class.forName("com.mysql.jdbc.Driver");

Attention, à ne pas tout mélanger, Eclipse n'est pas un compilateur, et l'erreur que tu as n'es pas non plus une erreur de compilation, car ce code compile très bien.

En revanche tu peux avoir des erreurs d'exécution, mais il faudrait que tu nous indique lesquelles, on ne va pas les deviner... Tu peux aussi regarder dans la documentation les explications des erreurs et exceptions attendues :

LinkageError - if the linkage fails
ExceptionInInitializerError - if the initialization provoked by this method fails
ClassNotFoundException- if the class cannot be located

Enfin, tu peux regarder la FAQ JDBC...

PS. Vu que tu as trouvé le bouton <gras>, regarde ceux d'à côté, il y a <code> aussi, ce sera bien mieux pour conserver l'indentation de ton code !
1
amine_marc Messages postés 286 Statut Membre 2
 
Tjr KX ^^, je c pas comment vous remercier, c'est très gentil de votre part :)
Merci tout d'abord pour toutes ces clarifications, je les prends en considération.
Mais reste un pb :/ J'ai cherché même dans FAQ JDBC, dommage, il n'est pas signalé comment intégrer (ou déclarer) le pilote mysql dans CLASPATH , est-ce que vs pouvez me dire comment faire ça SVP, car je suis bloqué :/
0
KX Messages postés 19031 Statut Modérateur 3 020
 
1) Je remarque que tu ne dis toujours pas quelle est le type d'erreur que tu as !

2) Tu ne développe pas avec les dernières versions, tu devrais penser à te mettre à jour avec :
a) Java SE 1.7.11
b) Eclipse 4.2
c) mysql-connector-java-5.1.22

3) Modifier le .classpath à la main est déconseillé, tu peux tout faire depuis l'interface.
Project > Properties > Java Build Path > Add External JARs > mysql-connector-java-5.1.22-bin.jar
0
amine_marc Messages postés 286 Statut Membre 2
 
Oook ^^ :) Merci KX, je vais faire ce que vous dites, mais concernant Eclipse, est-ce qu'on peut le considérer comme logiciel, éditeur .. ou quoi exactement !!?
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Eclipse est un IDE : environnement de développement intégré.
Actuellement tu travailles sur Java 6, alors ne sais pas trop quelle version d'Eclipse tu as, mais si tu as une trop ancienne version il ne supportera pas Java 7, dans ce cas il faudra aussi mettre à jour Eclipse (d'un point de vue général, tous les logiciels qui accèdent à internet devraient être à jour pour éviter qu'ils ne soient vulnérables à des attaques extérieures)
0
amine_marc Messages postés 286 Statut Membre 2
 
Merci ^^, mais comment le mettre à jour, je trouve pas une option UPDATe, et dsl pr trop de question :/
0
jihedbond Messages postés 60 Statut Membre 1
 
tout ce qui manque c'est de télécharger le driver mysql pour java et l'ajouter à votre projet

veuillez consulter se tutoriel

http://jihedgeek.blogspot.com/2013/01/connection-mysql-en-java-via-un-driver.html

bon courage
1
amine_marc Messages postés 286 Statut Membre 2
 
Merciiiiiiiii jihedbond ^^ c'est b1 maintenant :) pour le pilote.
Mais :/ un autre erreur !! concernant la ligne :

 Connection con = DriverManager.getConnection(dbUrl);


qu'Eclipse le signale,......... même si, je l'ai remplacer par:

Connection con = DriverManager.getConnection(dbUrl,"root"," ");
0
amine_marc Messages postés 286 Statut Membre 2
 
l'erreur signalé est:
java.sql.SQLException: Accès refusé pour l'utilisateur: ''@'@localhost' (mot de passe: NON) ...
0
KX Messages postés 19031 Statut Modérateur 3 020
 
Je ne sais pas si on peux utiliser "root" dans ce contexte, mais son mot de passe n'est certainement pas " "
0
amine_marc Messages postés 286 Statut Membre 2
 
oui, j'ai déjà programmer par PHP/mysql, pr faire une connexion avec une bdd mysql on utilise les paramètres suivants: "localhost", "root", ""
0
KX Messages postés 19031 Statut Modérateur 3 020
 
"" ou " " ? Il faut être sûr du mot de passe...
0