Bonjour,

Je débute dans le domaine des BDD avec java et j'ai pris un code sur le site pour accéder à un BD Access.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public static Connection connect(String fichier) 
			throws ClassNotFoundException, SQLException {
 
		Connection con;
 
		try {
			Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
			String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=";
 
			database += fichier.trim() + ";DriverID=22;READONLY=false}";
			con = DriverManager.getConnection(database, "", "");
			return con;
		}catch(Exception e) {
			System.out.println(e.getMessage());
		}
 
		return null;
	}
J'ai le "fameux" problème :
- [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié

Dans mon ODBC j'ai une ligne :
- MS Access Database 32 bits Pilote : Microsoft Access Driver (*.mdb, *.accdb)

Donc déjà 2 questions me viennent :

Est-ce que je doit utiliser la ligne de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb,*.accdb)};DBQ=";
ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";
En théorie je devrais utiliser la 2ème puisque je suis en 32 bits mais vu que mon pilote contient *.accdb ça favorise le 1er choix, non ?

Et comment fais t'on pour être sûr que notre application fonctionne sur tous les PC ? (utilisant la version 32 et/ou 64 bits).



EDIT : Apparemment j'ai rien compris avec ODBC. Pourriez-vous m'indiquer ce que représente Driver dans "jdbc:odbcriver"