la création de jdbc odbc connexion sans créer la source de données MS ACCESS
Je suis en train de faire la connexion entre java et base de données ms access. Je veux faire de la connexion sans créer la source de données. Je suis en utilisant le code suivant mais il est en train de jeter l'exception "nom de source de Données introuvable exception "
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con=DriverManager.getConnection("Jdbc:Odbc:Driver={Microsoft Access
Driver(*.mdb)}; dbq=d:/newfolder/db11.mdb");
Statement st=con.createStatement();
}
catch(Exception ex)
{
ex.printStackTrace();
}
- [déjà répondu ici, cela peut vous aider ][1] [1]: stackoverflow.com/a/5016979/1655086
Vous devez vous connecter pour publier un commentaire.
il devrait ressembler à ceci:
Chaîne de connexion JDBC commencer avec
jdbc:
comme:J'ai aussi eu ce problème et a essayé de nombreuses suggestions ici et sur les divers forums. Enfin, j'ai découvert un extrait d'un endroit qui conduit à la réussite de la connexion et explique aussi pourquoi beaucoup de ces postes ne fonctionnent pas. Voir http://www.coderanch.com/t/295299/JDBC/databases/jdbc-odbc-DSN-connection-MS
Le problème est qu'il doit y avoir un point-virgule après les deux-points à la fin de odbc, jdbc:odbc:;Driver= . Cela avait un sens après la lecture de la documentation d'Oracle sur le JdbcOdbc pont qui stipule que la syntaxe est jdbc:odbc:dsn; attributs....... Comme nous ne sommes pas la fourniture d'une source de données, puis nous avons besoin à la fin ; avant d'ajouter des attributs.
Que je vous montre ci-dessous les tests, j'ai couru avec les différentes chaînes de connexion sur un Windows 7 Ultimate 32 bits de la machine:
stmt1 et stmt3 sont nuls puisque les connexions sont nulles. stmt et stmt2 travail. stmt2 utilise une chaîne de connexion que j'ai trouvé dans la documentation pour IBM Tivoli. Cela fonctionne parce que le "MS Accès Base de données" est un titre valide de propriété dans le registre ODBC comme un DSN Utilisateur sur mon ordinateur.