JDBC-ODBC桥连access教程
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
JDBC-ODBC桥连access教程
我电脑win7x64位,事先安装了64位的eclipse,64位的JDK版本8,目前最高版本,由于第一次接触access数据库,什么ODBC数据源,和有什么桥连的,加上老师还要摧着交实验,我头都大了,完全崩溃!!废话不多说了,下面就来做吧。
运行过程中会出现的错误有:
1、ctrl+shift+t 找不到sun.jdbc.odbc这个类
2、No suitable driver found for jdbc
3、SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
4、找不到Microsoft Access Driver(*.mdb)ODBC驱动程序
解决过程如下:
一、安装0ffice Access 2010
下面附下载地址:64位
/s/1c0yG6q8
安装过程压缩包里有说明文件。
二、建立ODBC数据源
安装好office 2010后,一般会在控制面板的管理工具下的ODBC中找到MS ACCESS DATABASE 字样选择添加:如下图
结果显示不出Access Diver,这时就要通过
C:/Windows/SysWOW64/odbcad32.exe目录打开,这里要重点说下:
C:/Windows/SysWOW64/odbcad32.exe创建的是32位的ODBC
C:\Windows\System32/odbcad32.exe创建的是64位的ODBC
但是使用system32创建64位ODBC过程中会出现和上面用控制面板一样的结果,就是找不到Access驱动,所以只能创建32位的ODBC。
另外如果建立32位的ODBC就要用32位的JDK , 建立64位的ODBC要用64位的JDK.
见下图:
选择Access driver(*mdb)后完成
选择创建输入数据库名student 可选择目录并确定
点击选择刚建好的student.mdb数据库文件,确定后,写上数据源的名字如access
三、下载低版本的32位JDK(记住一定是32位的)
由于我之前用的是版本8的64位JDK,所以赶紧到官网上下了32位的版本6的JDK
JDK7和JDK8貌似都不支持JDBC-ODBC桥连,所以最好下个版本6的
步骤如下图:
注:你要在甲骨网上注册个账号,才可以下载!!下载地址:
/technetwork/java/javase/downloads/index-jsp-138 363.html
翻到该页最下面,可以看到红色区域的
点击下载:选择版本6
下载windows32位
JDK下载后默认安装,下面是配置环境变量“打开我的电脑--属性--高级--环境变量
2.新建用户变量JAVA_HOME 和CLASSPATH
变量名:JAVA_HOME
变量值:C:\Program Files\Java\jdk1.6.5
变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; 变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
3. 选择“系统变量”中变量名为“Path”的环境变量,双击该变量在原先的变量值下添加;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
打开CMD 输入命令检查,此处不再赘述:JDK 建立成功
四、建立java工程
由于我的电脑上还装了64位的JDK,现在要使用32位的JDK,就要选择相应版本的JRE了如上图:
选择Configure JREs
选择搜索,选择你的32位JDK
勾选上32位的Jre完成。
下面是对刚才建立的student.mdb操作,添加一些简单的子项,如下图:
上面一定是数据源名另附程序
import java.sql.*;
//引入java.sql包
public class TestDB_01{
public static void main(String[ ] args) {
String JDriver = "sun.jdbc.odbc.JdbcOdbcDriver"; //声明JDBC驱动程序对象//String conURL="jdbc:odbc:TestDB"; //定义JDBC的URL对象(选择不同的数据库)String conURL="jdbc:odbc:access"; //
try {
Class.forName(JDriver); //加载JDBC-ODBC桥驱动程序
}
catch(ng.ClassNotFoundException e) {
System.out.println("ForName :" + e.getMessage( ));
}
try {
Connection con=DriverManager.getConnection(conURL); //连接数据库URL
Statement s=con.createStatement( ); //建立Statement类对象
String query = "create table student( "
+ "id char(10),"
+ "name char(15),"
+ "score integer"
+ ")"; //创建一个含有三个字段的学生表没有class //表中还没有任何记录
s.executeUpdate(query); //执行SQL命令
s.close( ); //释放Statement所连接的数据库及JDBC资源
con.close( ); //关闭与数据库的连线
}
catch(SQLException e){ System.out.println("SQLException: "
+e.getMessage( )); }
}
}
保存运行,一般要运行几次student表才会显示数据,你最好还是等等吧,结果如下:
这表示:我们连接好了。
哈哈终于大功告成!!!。