《2022年jdbc-odbc桥数据库连接 .pdf》由会员分享,可在线阅读,更多相关《2022年jdbc-odbc桥数据库连接 .pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1、工作原理:JDBC- ODBC (Open Database Connectivity,ODBC) 桥驱动 程序由 Sun 与 Merant 公司联合开发 , 主要功能是 把 JDBC API调用转换 成 ODBC API 调用, 然后 ODBC API调用针对供应商的 ODBC 驱动 程序来 访问 数据 库, 即利用 JDBC- ODBC 桥通过 ODBC 来存 储数据源 。如下 图: JDBC-ODBC应用模式图 1.1JDBC-ODBC应用模式JDBC- ODBC 桥是一个JDBC 驱动 程序 , 对 ODBC 而言 , 它像是通用的应用程序 , 桥为 所有适用于 ODBC 的数据
2、库实现 JDBC 。它作为sun.jdbc.odbc 包实现 , 其中包含一个用来访问 ODBC 的本地 库。由于 ODBC 被广泛地使用, 所以 桥的优点是 让 JDBC 能够访问 几乎所有的数据库。 桥支持 ODBC 2.x, 这是当前大多数据ODBC 驱动程序支持的版本。 桥驱动程序 为 Java 应用程序提供了一种把 JDBC 调用映射 为 ODBC 调用的方法。因此,需要在客户端机器上安装ODBC 驱动 。 JDBC-ODBC 桥在 JDBCAPI 和 ODBCAPI 之间提供了一个 桥梁,这个桥把标准的 JDBC 调用翻 译成对应 的 ODBC 调用,然后通 过 ODBC 库把它们
3、发 送到 ODBC 数据源。2、 JDBC-ODBC所用的配置桥作为包 sun.jdbc.odbc 与 JDK 一起自 动安装 , 无需特殊配置 。Java 2 SDK 类库 中包含了用于JDBC-ODBC桥接驱动 程序的 类, 因此不再需要安装任何附加包就可以使用。但是客户机需要通 过 生成数据源名 (Data Source Names , DSN)来配置 ODBC 管理器 。 DSN 是一个把数据 库、 驱动 程序、一些可 选的设置连接起来的命名配置。具体配置方法如下( 在 Windows XP 环境下 ) : ( 1) 控制面板中 , 管理工具 数据源 (ODBC)- 系统 DSN; (
4、如 图 2.1 )名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 7 页 - - - - - - - - - 图 2.1 ( 2) 在 ODBC 数据源管理器中的“ 系统 DSN ” 中添加系 统数据源 (如果没有找到该数据源的 驱动 程序 则需要下 载安装 )。 要注意 , 一定要用系 统 (DSN) 数据源 , 不能用用 户 (DSN) 数据源 , 因为 servlet 是伪系统(DSN), 所有的jsp 、 servlet 程序 , 需要 连接 jdbc- odbc
5、 驱动 的话, 都只能用系 统( DSN) 数据源 , 不能用用 户( DSN) 数据源。3、各数据 库的不同配置( 图解)3.1 Access (1)添加 -Driver do Microsoft Access(*.mdb)-完成名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 7 页 - - - - - - - - - (2)输入数据源名称yiliangdian_access ( 3)在数据库标签 中-选择 ,在列表中选择 需要 连接的数据 库 student. 名师资
6、料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 7 页 - - - - - - - - - ( 4 ) 单 击 高 级 可 设 置 登 陆 名 称yiliangdian与 密 码123456 。这 三项 必 须 与 程 序 中DriverManager.getConnection(jdbc:odbc:yiliangdian_access,yiliangdian ,123456 )一致。3.2 mysql (1) 如 access 中的(1)。(2) 选择 mysql 数据源 驱
7、动,如果没有 则需要下 载安装。 - 完成名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 7 页 - - - - - - - - - (3) 输 入数据 源名称yiliangdian_mysql,Server:localhost(如果 连 接其它主机,输 入IP),User:root,Password:123456,Databasse:student. -OK 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - -
8、 名师精心整理 - - - - - - - 第 5 页,共 7 页 - - - - - - - - - 4、 应用/* * filename: joaccess.java * fuction: 实现 jdbc-odbc桥连 接方式方式* writtenby yiliangdian 2008-4-18 */ import java.sql.*; public class joaccess public static void main(String args) /建立和数据库的连接时要用好Connection接口Connection con; /提供在基层连接上运行SQL 语句Statement
9、 sql; /在 Statement执行了 SQL 语句以后,结果值是以结果集的方式返回的。ResultSet rs; try /jdbc-odbc桥连接方式需要加载jdbc-odbc方式的驱动程序Class.forName(sun.jdbc.odbc.JdbcOdbcDriver); catch(ClassNotFoundException e) System.out.println(+e); try /DriverManager类是JDBC的管理层,作用于用户和驱动之间。DriverManager类跟踪可用的驱动/程序,并在数据库和相应驱动程序之间建立连接。chenyuaccess是建立的
10、数据源名称,后两项是/用户名, 密码是建立数据源时设立的与数据库中的密码无关,该用户名密码可以为空。/不同的数据库连接只需要改变源名称,用户名和密码con = DriverManager.getConnection(jdbc:odbc:yiliangdian_access,yiliangdian,123456); /创建 Statement,获取 Statement实例,用于执行SQL 语句 sql = con.createStatement(); /运行查询语句,返回ResultSet对象名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - -
11、 - - 名师精心整理 - - - - - - - 第 6 页,共 7 页 - - - - - - - - - rs = sql.executeQuery(select * from chengjibiao); while(rs.next() String number = rs.getString(1); String name = rs.getString(2); Date date = rs.getDate(3); int math = rs.getInt(4); System.out.println(学号: + number); System.out.println(姓名: + name); System.out.println(生日: + date); System.out.println(数学: + math); con.close(); catch(SQLException e1) System.out.println(sql语句出错 :+e1); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 7 页 - - - - - - - - -