2011-10-05 29 views
1

目前我開發了一個小型桌面應用程序,作爲我的項目的一個增強功能,讀取'.mdb'文件並使用'JDBC-ODBC Driver'作爲MS Access數據庫連接。 。 這在Windows環境中工作正常,但我無法在Debian-Linux機器上運行。在Debian Linux機器上使用Java連接MS Access

爲同一的代碼如下所述:

try 
{ 
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 
    oAccessConnection = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+mdbFileName); 
} 
catch (Exception oException) 
{ 
    logger.info("Exception",oException); 
} 

請幫我診斷的問題!

回答

3

JDBC-ODBC橋將不能在Linux機器上工作,因此您必須使用其他JDBC驅動程序,它將直接訪問MS-ACCESS(不是通過ODBC橋) - 嘗試查看this thread

2

除非你能找到適用於Linux的MS Access,否則我不相信這會起作用。 MS Access需要在支持的操作系統上運行。

您可以在單獨的Windows機器上運行MS Access並遠程訪問它,也可以在同一個盒子上的虛擬機中安裝Windows,例如, https://www.virtualbox.org/

或者您可以使用可以在其他操作系統上使用的數據庫。 (這幾乎是任何數據庫接受MS Access和MS Sql服務器)

+0

你可以建議任何方法相同? – HarsH1610

+0

@HarsH,增加了一些建議。 MS堅持訪問在他們的Windows操作系統上運行。 –

1

如果您只需要操作文件數據並且不需要運行復雜的查詢,那麼您可以使用jackcess來處理訪問文件(它可以在任何平臺沒有額外的庫)。唯一的缺點是它不支持jdbc或者有執行sql查詢的方法。