1、第13章 数据库应用,教学提示:访问数据库是当前几乎所有应用都会进行的操作,在任何一种编程语言中都是尤为重要的组成部分。本章将介绍Java访问数据库的机制JDBC。本章不对SQL语句进行介绍,在这里假设读者已经掌握基本的SQL语句 。学完本章之后 ,读者将有能力构建一个拥有数据库管理系统的应用。,教学目标:掌握连接数据库,对数据库进行查询和更新的操作。通过上机实践,掌握数据库操作的综合运用。,13.1 JDBC简介,JDBC(Java Database Connectivity)是Java的一个标准SQL数据库访问接口,它为数据库应用开发人员、数据库前台工具开发人员提供一种标准的应用程序设计接
2、口。开发人员只需使用JDBC提供的类,调用这些类的方法,即可对数据库进行访问,而无需关心所使用的具体是什么数据库系统。也就是说,开发人员可以很方便地将 SQL语句传送给几乎任何一种数据库去执行并返回结果 ,而不必写一段代码访问 Sybase ,写另一段代码访问 Oracle ,再写一段代码访问SQL Server。,13.2 建立与数据库系统的连接,当前的主流数据库系统有:Oracle,Sybase,Informix,InterBase,IBM DB2,Microsoft SQL Server,Borland DataStore和MySQL等,它们基本的共同特点是支持大规模数据的存储与访问,功
3、能强大,是那些小型数据库系统(如Microsoft Access)所不可比拟的。,13.2.1 建立与Oracle的连接,13.2.2 建立与Microsoft SQL Server的连接,13.2.1 建立与Oracle的连接,若Oracle的版本为8.1.x,则在Oracle的安装目录下的Ora81jdbclib(其中Ora81目录随Oracle版本的不同而不同)子目录下可以找到Oracle版本自带的JDBC驱动程序文件,但这个驱动程序是针对Oracle版本面世时的JDK版本的,如Oracle 8.1.x中自带的驱动程序就是针对JDK 1.2的,不一定适合于所有读者的机器。某些读者的机器中
4、的JDK可能是1.3或者1.4版本的,此时就需要下载相应的JDBC驱动程序。读者可以在以下地址找到Oracle的纯Java的JDBC驱动程序的下载链接:http:/ 建立与Microsoft SQL Server的连接,读者可以在以下地址下载 Microsoft SQL Server 2000 的纯 Java 的JDBC驱动程序:http:/ Server 2000的JDBC驱动程序。 下载完毕后双击setup.exe文件,一路单击next按钮即可完成安装。其默认的安装路径为C:Program FilesMicrosoft SQL Server 2000 Driver for JDBC,在其子
5、目录lib下的3个jar文件就是SQL Server 2000的JDBC驱动程序的核心文件,它们是msbase.jar、mssqlserver.jar和msutil.jar,将这3个文件的完整路径按照13.2.1小节介绍的方法写入环境变量中即可。,返回,13.3 访问数据库,访问数据库是数据库应用中的重点 ,也是数据库应用最基本的目的。而访问数据库最基本的问题有两个,一是如何向数据库提交SQL语句以便数据库执行;二是如何操作从数据库返回的结果 。JDBC通过两个类Statement和ResultSet来完成这两项工作。,13.3.2 ResultSet,13.3.1 Statement,13.
6、3.1 Statement,用于向数据库提交SQL语句以便数据库执行的类总共有3个,它们分别是 Statement 、 PreparedStatement 和 CallableStatement ,其中PreparedStatement 继承自 Statement ,而 CallableStatement 继承自PreparedStatement 。 Statement 用于向数据库提交简单的不带参数的SQL语句,数据库对于Statement提交的每一条 SQL语句都会进行一次编译之后再执行,对于被反复执行的SQL语句,这样做显然效率较低。PreparedStatement用于向数据库提交带参
7、数(也可以不带)的预编译SQL语句,PreparedStatement会对提交的SQL语句进行一次预编译,将预编译之后的结果提交给数据库,数据库对于PreparedStatement提交的SQL语句,若发现其在近期已执行过,则不会再进行编译,而是直接执行,从而大大提高了性能。CallableStatement用于向数据库提交执行存储过程的请求。,返回,13.4 上 机 指 导,在本次上机指导中,将给出一个数据库应用的综合实例,针对前面几节中的内容进行实际上机练习,目的是让读者了解如何构建一个完整的数据库应用,并进一步熟悉连接并访问数据库的相关操作 。通过理解该例 ,读者将有能力完成实际的数据库应用。,