Je reçois l'erreur: java.sql.SQLException: Aucun pilote appropriéConnexion à MySql sur Mac: Pas d'erreur de pilote approprié
J'ai importé le fichier .jar est disponible ici http://dev.mysql.com/downloads/mirror.php?id=13598
I J'utilise Eclipse.
Je me connecte à la DB avec ce code:
package dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBCon {
private static final String host = "jdbc:mysql://localhost";
private static final String port = "3306";
private static final String db = "mydb";
// private static final String user = "root";
// private static final String pwd = "";
private static final String user = "myusername";
private static final String pwd = "mypwd";
public Connection getCon() {
Connection con = null;
try {
String url = host + ":" + port + "/" + db;
con = DriverManager.getConnection(url, user, pwd);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return con;
}
}
J'interroge alors le DB avec ce code:
package dao;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.sql.Connection;
import model.ClassPojo;
public class ARCSDao {
public ArrayList<ClassPojo> viewClasses() throws SQLException{
ArrayList<ClassPojo> classList = new ArrayList<ClassPojo>();
DBCon db = new DBCon();
Connection con = db.getCon();
Statement stmt;
ResultSet rs;
stmt = con.createStatement();
rs = stmt.executeQuery("SELECT * FROM classes");
while(rs.next()){
ClassPojo aClass = new ClassPojo();
rs.getString("class_name");
rs.getString("class_uri");
classList.add(aClass);
}
return classList;
}
}
Je faisais du dev sur une boîte de Windows et je n'avais aucun problème, je le fais maintenant sur un mac - Je ne sais pas si cela cause des problèmes. Je ne vois pas comment cela fonctionne puisque c'est Java et j'ai fait du codage non-db sur cette machine. – Ankur
Le serveur mysql est-il dans la même boîte? Alors, que diriez-vous de vérifier la version de mysql que vous utilisez? – naikus
Non, ce n'est pas sur la même case, j'utilise en fait un serveur mysql distant utilisant la redirection de port, mais je vais essayer de vérifier quelle est la version de mysql. – Ankur