[时间]: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.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