如何使用JDBC从Java连接到Access数据库?

时间:2011-12-14 12:08:41

标签: java ms-access jdbc

如何使用JDBC从Java连接到Access数据库?

OP评论中提供的代码

public static Connection getConnection() throws SQLException { 
    // connection object
    Connection con = null;

    // database url
    String connectionString = "jdbc:odbc:Driver= " 
            + "{Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + dbPath;

    try {
        Class.forName(driver);
        con = DriverManager.getConnection(connectionString);
    } catch (ClassNotFoundException ex) {
        System.out.println("connot load driver class");
        return con;
    }
}

6 个答案:

答案 0 :(得分:1)

你可以使用

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

// set this to a MS Access DB you have on your machine

String filename = "d:/java/mdbTEST.mdb";
String database = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ=";
database+= filename.trim() + ";DriverID=22;READONLY=true}"; // add on to the end 
// now we can get the connection from the DriverManager
Connection con = DriverManager.getConnection( database ,"",""); 

参考http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=2691&lngWId=2

答案 1 :(得分:0)

你需要ODBC-JDBC桥接器。

请参阅 http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=2691&lngWId=2 用于示例源代码。 和 http://www.youtube.com/watch?v=iXkGMu70HuM请参阅如何设置数据源(DSN)。

答案 2 :(得分:0)

另一种选择 - JDBC to ODBC Bridge - 具有客户端/服务器架构也可用......

这意味着Java应用程序和Access数据库可以驻留在不同的计算机上。

以下链接将让您了解其中的内容 -

OpenLink Milti-tier JDBC to ODBC Bridge

答案 3 :(得分:0)

public class NewClass {
static final String DRIVER = "com.mysql.jdbc.Driver";
static final String DATABASE_URL = "jdbc:mysql://localhost/databasename";
Connection connection = null;
Statement statement = null;
ResultSet resultSet = null;
public void dataQuery(String queryData) {
    Class.forName(DRIVER);
    connection = DriverManager.getConnection(DATABASE_URL, "root", "");
    statement = connection.createStatement();
    resultSet = statement.executeQuery(queryData);
    while (resultSet.next()) {
        System.out.println(resultSet.getObject(1));
    }
}    
catch (Exception e) {            
    System.out.println("error Accessing");
}finally {
    try {
        resultSet.close();
        statement.close();
        connection.close();
    } catch (Exception exception) {
        System.out.println("error closing ");}
}
}
}

答案 4 :(得分:0)

您可以使用ODBC连接从Java连接到Access数据库。

请参阅以下示例

http://www.csnotes32.com/2014/11/how-to-read-write-update-and-list-data.html

答案 5 :(得分:0)

现在已经从Java中删除了JDBC-ODBC Bridge(从Java SE 8开始),未来的读者应该考虑使用UCanAccess JDBC驱动程序。有关更多信息,请参阅

Manipulating an Access database from Java without ODBC