javaJDBC

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
步骤详解3: 步骤详解 :获得连接对象
成功加载驱动后,必须使用 类的静态方法getConnection来 成功加载驱动后,必须使用DriverManager类的静态方法 类的静态方法 来 获得连接对象; 获得连接对象; 方 法 原 型
JDBC工作方式示意图 工作方式示意图
Java 程序
JDBC 驱动程序
SQL 命令 结果
数据库
JDBC驱动程序类型 驱动程序类型
使用JDBC连接数据库可以通过不同的驱动方式来实现, 连接数据库可以通过不同的驱动方式来实现, 使用 连接数据库可以通过不同的驱动方式来实现 种驱动类型: 有4种驱动类型: 种驱动类型
DriverManager
Date
该类中包含有将SQL日期格式转换成 日期格式转换成Java日期格式的方法 该类中包含有将 日期格式转换成 日期格式的方法
TimeStamp
表示一个时间戳, 表示一个时间戳,能精确到纳秒
JDBC程序访问数据库步骤 程序访问数据库步骤
开 始
JDBC-ODBC桥方式 桥方式
java.sql包中的一些接口 包中的一些接口
接口名称 Connection Driver Statement PreparedStatement CallableStatement ResultSet 说 明
连接对象, 连接对象,用于与数据库取得连接 用于创建连接( 用于创建连接(Connection)对象 ) 语句对象,用于执行SQL语句,并将数据检索到结果集( 语句对象,用于执行 语句,并将数据检索到结果集( 语句 ResultSet)对象中 ) 预编译语句对象,用于执行预编译的 语句, 预编译语句对象,用于执行预编译的SQL语句,执行效率 语句 比Statement高 高 存储过程语句对象, 存储过程语句对象,用于调用执行存储过程 结果集对象,包含执行 结果集对象,包含执行SQL语句后返回的数据的集合 语句后返回的数据的集合
步骤详解1: 步骤详解 :建立数据源
这里以JDBC-ODBC桥驱动方式为例,逐步详细地讲解在Java程序中 桥驱动方式为例,逐步详细地讲解在 这里以 桥驱动方式为例 程序中 如何操作数据库,而对于其它驱动方式,只需更换驱动程序即可, 如何操作数据库,而对于其它驱动方式,只需更换驱动程序即可,其 余不变; 余不变; 首先建立ODBC数据源: 数据源: 首先建立 数据源 设置】 控制面板】 【管理工具】 【数据源( 【开始】→ 【设置】→ 【控制面板】→【管理工具】→【数据源( 开始】 ODBC)】 ) 新建数据源,名称可以任意, 新建数据源,名称可以任意,这里假设已经建立了一个名为 myODBC的数据源,连接到 的数据源, 中的pubs数据库。 数据库。 的数据源 连接到SQL Server 2000中的 中的 数据库
static Connection getConnection (String url, String user, String password) throws SQLException


参数url是连接字符串,参数 是数据库用户名, 参数 是连接字符串,参数user是数据库用户名,参数 是连接字符串 是数据库用户名 password是登录口令,成功连接到数据库返回 是登录口令, 是登录口令 成功连接到数据库返回Connection 对象,连接失败则抛出SQLException异常,必须捕捉 异常, 对象,连接失败则抛出 异常
回顾2 回顾
FileReader类和 类和FileWriter类配合 类配合BufferedReader类和 类和 类配合 类和 BufferedWriter类可以以字符流的方式对文件进行读 写操作 类可以以字符流的方式对文件进行读/写操作 类可以以字符流的方式对文件进行读 要从控制台接受输入,需要将 对象进行包装, 要从控制台接受输入,需要将System.in对象进行包装,使用如下语 对象进行包装 句:


对于使用JDBC-ODBC桥的驱动方式,应该加载: 桥的驱动方式,应该加载: 对于使用 桥的驱动方式 sun.jdbc.odbc.JdbcOdbcDriver类 类 如:
将由className指定完整名称的类加载到 指定完整名称的类加载到 将由 JVM中,如果加载失败,将抛出异常,必须 中 如果加载失败,将抛出异常, 捕捉
JDBC
JDBC(Java DataBase Connectivity)是由 ( )是由Sun Microsystem公司提供的 公司提供的API(Application 公司提供的 ( Programming Interface应用程序编程接口); 应用程序编程接口); 应用程序编程接口 它为Java应用程序提供了一系列的类,使其能够快速高 应用程序提供了一系列的类, 它为 应用程序提供了一系列的类 效地访问数据库; 效地访问数据库; 这些功能是由一系列的类和对象来完成的, 这些功能是由一系列的类和对象来完成的,我们只需使用 相关的对象,即可完成对数据库的操作。 相关的对象,即可完成对数据库的操作。
对于使用JDBC-ODBC桥的连接方式,连接字符串的一般形式是: 桥的连接方式,连接字符串的一般形式是: 对于使用 桥的连接方式 数据源名称” “jdbc:odbc:数据源名称”,如: 数据源名称
Connection con = DriverManager.getConnection("jdbc:odbc:myODBC", "sa", "");
java.sql包 包
java.sql包也是 包也是Java内置的包,其中包含了一系列用于与 内置的包, 包也是 内置的包 数据库进行通信的类和接口; 数据库进行通信的类和接口; 如果要使用到这些类和接口的话, 如果要使用到这些类和接口的话,则必须显式地声明如下 语句: 语句: import java.sql.*;
这就意味着编程语言要针对不同的DBMS开发不同版本的应用程序, 开发不同版本的应用程序, 这就意味着编程语言要针对不同的 开发不同版本的应用程序 这将是一项非常枯燥的工作。 这将是一项非常枯燥的工作。
ODBC
ODBC(Open DataBase Connectivity)指开放式数据 ( ) 库连接,是由Microsoft公司提供的应用程序接口; 公司提供的应用程序接口; 库连接,是由 公司提供的应用程序接口 它负责连接各种不同产商和类型的DBMS,然后为各种不 , 它负责连接各种不同产商和类型的 同的编程语言提供查询、插入、修改和删除数据的功能; 同的编程语言提供查询、插入、修改和删除数据的功能; 如同在各种不同的DBMS和各种不同的编程语言之间架设 和各种不同的编程语言之间架设 如同在各种不同的 了一座通用的桥梁。 了一座通用的桥梁。
导入 java.sql包 包
纯Java驱动方式 驱动方式
建立数据源( 建立数据源(ODBC) )
附加相应产商提供的驱动
加载并注册驱动程序 创建Connection 对象 创建 关闭ResultSet 对象 关闭 关闭Statement对象 对象 关闭 使用ResultSet对象 对象 使用 关闭Connection对象 对象 关闭 创建 Statement 对象 执行SQL语句 语句 执行 结 束
数据库访问技术简介
当今企业级应用程序大部分采用了客户机/服务器( 当今企业级应用程序大部分采用了客户机 服务器(C/S) 服务器 ) 模式; 模式; 客户端机器需要与服务器进行通讯, 客户端机器需要与服务器进行通讯,要操作数据库中的数 执行SQL(Structured Query Language结构化查 据,执行 ( 结构化查 询语言)语句以及检索查询结果; 询语言)语句以及检索查询结果; 中实现这些活动的技术称作JDBC。 在Java中实现这些活动的技术称作 中实现这些活动的技术称作 。
本章相关词汇

driver connection manager statement prepared result create execute query

驱动, 驱动,驱动程序 连接 管理器 语句 预备的, 预备的,预编译的 结果 创建, 创建,创造 执行 查询


本章目标
了解JDBC的概念和必要性 的概念和必要性 了解 了解JDBC驱动程序类型 驱动程序类型 了解 了解java.sql包 包 了解 理解JDBC程序的结构 程序的结构 理解 使用JDBC进行数据库编程 进行数据库编程 使用
数据库编程示意图
数据库编程
执行 SQL 语句
客户机/服务器 客户机 服务器 应用程序
数据库
检索查询结果
JDBC
关于DBMS 关于
DBMS(DataBase Management System)是指数据库管理系统; ( )是指数据库管理系统; 目前DBMS的生产商众多,产品也不尽相同,如: 的生产商众多,产品也不尽相同, 目前 的生产商众多
JDBC-ODBC桥驱动 桥驱动 纯Java驱动 驱动 本地API部分 部分Java驱动 本地 部分 驱动 JDBC网络纯 网络纯Java驱动 网络纯 驱动
不论采用哪种驱动方式, 不论采用哪种驱动方式,在程序中对数据库的操作方式基 本相同,只是加载不同的驱动程序即可。 本相同,只是加载不同的驱动程序即可。
InputStreamReader isr = new InputStreamReader(System.in); BufferedReader br = new BufferedReader(isr);
百度文库
绝大部分的IO操作都有可能抛出 绝大部分的 操作都有可能抛出IOException 操作都有可能抛出
java.sql包中的一些类 包中的一些类
类 名 称


SQLException
数据库异常类,是其它 异常类的根类, 数据库异常类,是其它JDBC异常类的根类,继承于 异常类的根类 java.lang.Exception,绝大部分对数据库进行操作的方法都有 , 可能抛出该异常 驱动程序管理类,用于加载和卸载各种驱动程序, 驱动程序管理类,用于加载和卸载各种驱动程序,并建立与数 据库的连接
Oracle公司的 公司的Oracle系列; 系列; 公司的 系列 Microsoft公司的 公司的Access系列和 系列和SQL Server系 公司的 系列和 系 列; Microsoft公司早期的 公司早期的FoxPro; 公司早期的 ; IBM公司的 公司的DB2; 公司的 ; Sybase公司的 公司的Sybase; 公司的 ; 还有自由开源的MySQL等等。 等等。 还有自由开源的 等等
步骤详解2: 步骤详解 :加载驱动程序
使用Class类的 类的forName方法,将驱动程序类加载到 方法, 使用 类的 方法 将驱动程序类加载到JVM(Java虚拟 ( 虚拟 机)中;
方 法 原 型
static Class forName(String className) throws ClassNotFoundException
Java JDBC
中国十大品牌IT教育机构
http://www.newer.com.cn
回顾1 回顾
java.io包中包含了一系列对输入 输出进行操作的类 包中包含了一系列对输入/输出进行操作的类 包中包含了一系列对输入 File类用于访问文件系统,但只能访问文件(或目录)的属性,而不 类用于访问文件系统,但只能访问文件(或目录)的属性, 类用于访问文件系统 能进行读/写操作 能进行读 写操作 流是指一连串流动的数据信号,是以先进先出方式发送信息的通道, 流是指一连串流动的数据信号,是以先进先出方式发送信息的通道, 从流动方向上区分,流可以分为输入流和输出流,从格式上区分, 从流动方向上区分,流可以分为输入流和输出流,从格式上区分,可 以分为字节流和字符流 使用FileInputStream类和 类和FileOutputStream类以字节流的方式读写 使用 类和 类以字节流的方式读写 文件
相关文档
最新文档