2011-06-06 154 views
3

我試圖使用JDBC連接到MS-訪問:ODBC:的Java:連接到MS-Access數據庫(MDB或MDE)

public boolean connectToAccess(String accessFilePath) { 
    //Get connection to database 
    try { 
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
     myConnection = DriverManager.getConnection("jdbc: odbc: driver={Microsoft Access Driver (*.mdb)};DBQ=" + accessFilePath); 
    } catch (Exception ex) { 
     System.out.println(ex); 
     return false; 
    } 
    return true; 
} 

我得到的錯誤: 「沒有合適的驅動程序找到JDBC :odbc:driver = {Microsoft Access Driver(* .mdb)}; DBQ = file.mdb「 爲什麼? 你能否提出另一種閱讀Java中訪問文件的方式?

+1

你可以在url後面的冒號(:)之後去掉空格 – 2011-06-06 11:47:13

回答

4

從連接字符串中取出這些空格,看看是否有幫助。我也建議打印堆棧跟蹤。

public boolean connectToAccess(String accessFilePath) { 
    //Get connection to database 
    try { 
     Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
     myConnection = DriverManager.getConnection("jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=" + accessFilePath); 
    } catch (Exception ex) { 
     ex.printStackTrace(); 
     return false; 
    } 
    return true; 
} 
1

嘗試從odbcad32創建Access數據庫的DSN。另一個問題可能是,驅動程序未安裝在您的計算機上,或者您的權限不足。