Bonjour,
J'utilise le code suivant pour accéder à Access sans passer par la création d'un lien ODBC:
Ceci fonctionnait parfaitement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String filename = "d:/java/mdbTEST.mdb"; String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="; database+= filename.trim() + ";DriverID=22;READONLY=true}"; // add on to the end Connection con = DriverManager.getConnection( database ,"","");
Mais voici le pbm: la base Access attaquée est protégée par un mot de passe.
Ce mot de passe ne me semble lié à aucun utilisateur.
Pour le définir dans Access il suffit d'aller vers: Outils>Sécurité>Définir le mot de passe de la base de données
Ce qui est différent de la gestion des utilisateurs et des groupes.
Mon problème est que si un mot de passe de base de données est défini alors le code précédent me ramène une exception qui me dit que le mot de passe est incorrect.
Je l'ai modifié comme suit :
Mais ça ne marche toujours pas, je ne sais pas si c'est le nom d'utilisateur "Admin" qui est faux.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); String filename = "d:/java/mdbTEST.mdb"; String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="; database+= filename.trim() + ";DriverID=22;READONLY=true}"; // add on to the end Connection con = DriverManager.getConnection( database ,"Admin","MyPassword");
Quelqu'un a déjà travaillé là-dessus?
Partager