[标题]:Java访问Access数据库
[时间]:2008年12月21日
[摘要]:JDBC-ODBC桥的方式又可以通过两种方式访问Access:(1)、配置ODBC数据源的方式。(2)、无需配置ODBC数据源,使用连接字符串指定数据源。
[关键字]:JDBC,ODBC,Access,Driver,驱动,DSN,Java

[正文]:
    使用Java访问Access数据库一般使用JDBC-ODBC桥驱动,因为这个驱动是JDK自带的驱动,所以不用下载即可使用。JDBC-ODBC桥的方式又可以通过两种方式访问Access。
    (1)、配置ODBC数据源的方式。
    首先在系统"控制面板"->"管理工具"->"数据源(ODBC)"的"系统DSN"中添加一个Access数据源,设置数据源名称为"test"。也可以选择"用户DSN"选项卡,系统的DSN对每个用户都适用可避免调试时出现的权限问题。程序如下:
import java.sql.*;
import java.io.*;
 
class Access{
    public static void main(String[] args){
        //String url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=E:\\helpdb.mdb";
        String url = "jdbc:odbc:helpdb";//helpdb为ODBC数据源名称

        Connection conn = null;
        try{
            Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            conn = DriverManager.getConnection(url , "" , "");
            Statement statement=conn.createStatement();
            ResultSet rs=statement.executeQuery("select * from TAttachment");

            while(rs.next()){
                System.out.println(rs.getString(1));
            }
        }catch(Exception e){
            e.printStackTrace();
        }finally{
            try{
                if(conn!=null)
                    conn.close();
            }catch(Exception e){
                e.printStackTrace();
            }
        }
    }//end of main
}

    (2)、无需配置ODBC数据源,使用连接字符串指定数据源。
    实际上,这和配置ODBC数据源的方式是类似的,只是JDBC帮我们完成了配置而已。这时,只需要将以上程序中的url改为url="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=E:\\helpdb.mdb"即可。其余部分不用改。

    当然还有其它的驱动方式,可以从http://developers.sun.com/product/jdbc/drivers 下载JDBC驱动。不过,上面很多都是收费的驱动,而且多是第三方驱动。Microsoft为SQL Server提供了JDBC驱动,好像没有为Access提供JDBC驱动。尽管JDBC-ODBC桥的访问方式效率最低,但也没办法。也不指望用Access写什么大的程序,自己做个Demo什么的用一用还是很方便的。
      尊重原创,原创地址:http://www.blogjava.net/wintys/archive/2008/12/21/java_access.html