我有一个正常的Java应用程序,该应用程序已连接到Access数据库。我的旧机器是带有JRE7(32位)的32位Windows。
我已升级到具有JRE8(64位)的64BIT Windows。
应用程序询问Java可执行文件夹的特定位置,我将其提供为
C:\Program Files\Java\JRE8\bin.
OR
C:\Program Files (x86)\Java\jre7\bin
运行应用程序时出现错误
java.sql.SQLException: [Microsoft][ODBC Driver Manager] Data source name
not found and no default driver specified
Failed to connect to Access DB: Main
我尝试将应用程序指向Java的旧版本以及新版本。我还确认我同时拥有32位和64位MS Access驱动程序。当我键入java -version时,它将拉到32位文件夹C:\ Program Files(x86)\ Java
中的Java版本“ 1.8.0_171”。这是我的连接字符串。
private static Connection getAccessDBConnection()
{
Connection dbConnection = null;
String ACCESSDB_Driver = "sun.jdbc.odbc.JdbcOdbcDriver";
String connURL="jdbc:odbc:DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + databasePath.trim() + "\\" + accessFileName.trim() + ".accdb;";
try
{
Class.forName(ACCESSDB_Driver);
dbConnection = DriverManager.getConnection(connURL, "","");
}
catch (Exception err)
{
err.printStackTrace();
}
return dbConnection;
}
有关检查内容的任何建议?预先感谢。