2011-09-24 103 views
2

我正在創建一個Java程序,用於從Microsoft Access數據庫檢索數據(以及可能存儲到其上的數據)。使用Java從Microsoft Access數據庫中檢索數據

這可能嗎?如果是的話,做起來很複雜嗎?還有沒有任何Java程序(或代碼)的例子,這樣做?

謝謝。

+1

的JDBC-ODBC橋沒了,今天一個可以參考http://stackoverflow.com/questions/21955256/manipulating-an-access-database-from-java-without-odbc – Tunaki

回答

4

是的,這是完全可能的。 Java的JDBC-ODBC橋是你最好的朋友。

首先,您需要配置對MSAccess數據庫的ODBC訪問。

然後,你需要這個簡單的代碼:

import java.sql.*; 

public class AccessManager { 

    private Connection con; 
    private Statement st; 
    private static final String url="jdbc:odbc:my_access_odbc_dsn"; 
    private static final String className="sun.jdbc.odbc.JdbcOdbcDriver"; 
    private static final String user=""; 
    private static final String pass=""; 

    AccessManager()throws Exception { 
     Class.forName(className); 
     con = DriverManager.getConnection(url, user, pass); 
     st = con.createStatement(); 
     // you can do select, insert, update, delete from 
    } 
} 
+0

非常感謝這個回覆。我將研究「Java的JDBC-ODBC橋」。我從來沒有聽說過它。代碼看起來像我可以使用的東西。再次謝謝你。 –

+0

此答案已過時,因爲JDBC-ODBC Bridge已從Java 8中移除。有關替代方法,請參閱[此問題](http://stackoverflow.com/q/21955256/2144390)。 –

1

是的,這應該通過JDBC是可能的:所以它是在Java中使用任何其他DBMS一樣簡單。

看看this document

+0

感謝您的鏈接。我會給它一個閱讀。 –

0

雖然這種使用JDBC-ODBC橋是完全可能的。配置不容易設置,特別是如果你有一個architecture mismatch。確保您爲JDK,Driver,IDE和OS使用相同的架構來防止可笑的錯誤。如果您使用的是64位操作系統,則確保工具也是64位。同樣適用於32位。

TutTut2

+0

感謝提示Mob。 :) –