我想使用第三方应用程序提供的连接字符串来访问数据库。我有一个示例配置,其连接字符串如下所示:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\path\to\theDatabase.mdb;Persist Security Info=False
致电
DriverManager.getConnection("jdbc:odbc:" + connectionString);
给我一个SQLException:[Microsoft] [ODBC Driver Manager]找不到数据源名称,没有指定默认驱动程序
jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb)};C:\path\to\theDatabase.mdb
我只是不知道自己做错了什么。
答案 0 :(得分:2)
您的odbc连接存在问题 要连接访问数据库,请尝试以下
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection con = DriverManager.getConnection("jdbc:odbc:connSource");
转到ControlPanel-> AdministrativeTools-> DataSource(ODBC) - >系统DSN-> ADD-> MicrosoftAccess->
然后在名称字段中将Source Name命名为connSource。
您必须在DriverManager.getConnection方法中使用此名称而不是数据库名称。
因为getConnectionMethod取源名称而不是数据库名称。所以你的代码无效。
答案 1 :(得分:1)
这可能是个问题。我不知道OLE DB数据源的任何JDBC驱动程序。在这里,这些问题没有三月的答案:https://stackoverflow.com/questions/5184046/jdbc-oledb-bin。
答案 2 :(得分:0)
请参阅下面的网站,其中包含所有数据库的所有变体的连接字符串