第9章JSP数据库应用开发.ppt

上传人:sccc 文档编号:5309209 上传时间:2023-06-24 格式:PPT 页数:36 大小:975.52KB
返回 下载 相关 举报
第9章JSP数据库应用开发.ppt_第1页
第1页 / 共36页
第9章JSP数据库应用开发.ppt_第2页
第2页 / 共36页
第9章JSP数据库应用开发.ppt_第3页
第3页 / 共36页
第9章JSP数据库应用开发.ppt_第4页
第4页 / 共36页
第9章JSP数据库应用开发.ppt_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《第9章JSP数据库应用开发.ppt》由会员分享,可在线阅读,更多相关《第9章JSP数据库应用开发.ppt(36页珍藏版)》请在三一办公上搜索。

1、1,第9章 JSP数据库应用开发,2,主要内容,1.数据库简介2.关系数据库语言SQL3.SQL Server 2000简介4.JDBC,3,1.数据库简介,1.1 数据库基本术语数据(Date)数据库(DataBase)数据库管理系统(DBMS-DataBase Management System)数据库管理员(DBA-DataBase Administrator)数据库系统(DBS-DataBase System),4,5,1.2 关系数据库关系数据库是以关系模型为基础的,关系模型是利用二维表格表示数据的数据模型。下面以一个名为University的数据库为例,介绍关系数据库中的基本概念。

2、假设需要在数据库University中保存某所学校的学生信息和院系信息,分别见表9-1、表9-2。由于表9-1、表9-2与关系模型的二维表格类似,因此采用关系模型来表示University数据库,并将University数据库中存储的两个数据表(DataTable)命名为Student和Department,也称为关系Student和关系Department。,6,7,关系的首行称为属性(attribute),也称为字段(field)、数据项、数据元素等,关系的属性就是关系各列的名字,属性描述了所在列的意义。例如关系Student具有如下6个属性:Xuehao、Name、Sex、Age、Jig

3、uan和Dept,各个属性分别表示学生的学号、姓名、性别、年龄、籍贯和系别。关系中每一个属性都有一个取值范围,称为该属性的域(Domain)。例如在Student关系中,属性Xuehao、Name、Sex、Jiguan、Dept的域必须是字符串型,且属性Sex的取值必须为“男”或“女”,属性Age必须为大于0的整数型。,8,关系名和关系的属性集合称为关系的模式。要表示一个关系的模式,一般用括号将属性集括起来,并将关系名写在括号的前面,格式如下:Relation_Name(attribute1,attribute2,attribute3,)下面表示关系Student的模式:Student(Xue

4、hao,Name,Sex,Age,Jiguan,Dept)在关系中,字段的有序集合称为记录,记录的各个分量分别对应着关系的各个属性。要表示一条记录,一般用括号将整条记录的分量括起来,并用逗号将各分量隔开,如下表示一条记录:(2004001,张三,男,20,湖北武汉,计算机),9,在关系中,能惟一标识记录的属性集称为关系模式的超键(Super Key)。例如在关系Student中包含有Xuehao属性的属性集均为超键,如(Xuehao,Name)、(Xuehao,Sex)、(Xuehao,Age,Jiguan)、(Xuehao,Sex,Age,Dept)等。在关系中,不含有多余属性的超键称为候选

5、键(Candidate Key),在候选键中用户选择作为记录标识的候选键称为主键(Primary Key),在不作说明的情况下,键一般指主键。例如在关系Student中,(Xuehao,Name)为关系Student的超键,但不是候选键,候选键为(Xuehao),由于候选键只有一个,因此主键也为(Xuehao)。,10,在关系中,如果模式R中的属性K是其他模式的主键,则属性K在模式R中称为外键(Foreign Key)。例如在关系Student和关系Department中,Dept为关系Student的属性,且Dept为关系Department的主键,则在关系Student中称属性Dept为外

6、键。,11,完整性规则实体完整性规则(Entity Integrity Rule)参照完整性规则(Reference Integrity Rule)用户定义的完整性规则,12,2.关系数据库语言SQ L,SQL(Structured Query Language)是结构化查询语言的简称,它被ANSI(American National Standards Institute,美国国家标准协会)称为关系数据库管理系统的标准语言。SQL语言的主要功能是同各种数据库建立联系,进行沟通,它可用来执行各种操作,如从数据库中检索数据、更新数据库中的数据等。,13,2.1 SQL语言的组成数据定义语言(DD

7、L-Data Definition Language)数据操纵语言(DML-Data Manipulation Language)数据控制语言(DCL-Data Control Language)嵌入式SQL语言,14,2.2 SQL语言的数据类型SQL的数据类型主要可分为3类:数字类型日期和时间类型字符和字符串类型,15,2.3 SQL运算符运算符(Operators)是一种符号,用来指定要在一个或多个表达式中执行的操作。SQL运算符可分为以下6类。赋值运算符(Assignment Operators)算术运算符(Arithmetic Operators)逻辑运算符(Logical Oper

8、ators)位运算符(Bitwise Operators)比较运算符(Comparison Operators)字符串连接运算符(String Concatenation Operators),16,2.4 SQL函数聚合函数:聚合函数主要作用于SELECT语句所选取的记录集,并返回记录的一些统计信息,如sum、max、min、avg、count等。纯量函数纯量函数主要是针对传递的参数值来进行运算处理的,并返回一个单一值。按功能特性来分,纯量函数可分为算术函数、字符串函数、时间日期函数和中继数据函数等4类,17,2.5 数据定义语言模式的创建和删除在SQL中,数据表的集合称为一个模式,也可理解

9、为前面介绍过的数据库。一个模式由模式名和模式拥有者的名称来确定,格式如下:CREATE SCHEMA schemaName AUTHOTIZATION user若一个模式及其所属的数据表、索引、视图等元素都不需要时,可删除该模式,格式如下:DROP SCHEMA schemaName CASCADE|RESTRICT,18,创建一个数据表的格式如下:CREATE TABLE table_name(colname1 datatype constraint,colname2 datatype constraint,colnameN datatype constraint,完整性约束,);其中tab

10、le_name表示所要创建的表名,colname1、colname2colnameN表示所要创建的属性名,datatype表示属性的数据类型,constraint表示限制条件,19,为加快数据的查询速度,满足不同的排序要求,需要在数据表的一个或多个字段上建立索引。索引就好像图书的目录,通过查询图书的目录,可以方便地查出所要阅读的章节的页号,通过查询数据表中的索引,也可以快速查找所要查询的记录。在数据表上创建一个索引的格式如下:CREATE UNIQUE INDEX index_name ON table_name(attribute_list),20,2.6 数据操纵语言数据查询是指在数据库中

11、查询符合特定条件的数据记录,其格式如下:SELECT DISTINCT|ALL select_expressionINTO table_nameFROM table_listWHERE where_conditionsGROUP BY col_name1,col_name2,HAVING where_conditionsORDER BY col_name1 ASC|DESC,col_name2 ASC|DESC,21,在SQL中要想在数据表中插入数据,必须使用INSERT语句,格式如下:INSERT INTO table_name1(attribute_list)VALUES(values1,

12、values2,)|SELECT查询语句|TABLE table_name2其中要插入的数据有下列三种形式。values(values1,values2,):表示在table_name1中插入若干个记录的实例。SELECT查询语句:表示将SELECT语句查询的结果值插入至表table_name1中。TABLE table_name2:表示将表table_name2中的值插入至表table_name1中,22,若要修改数据表中的数据,必须使用UPDATE语句,格式如下:UPDATE table_nameSET(column1=expression|DEFAULT|NULL)column2=WHE

13、RE where_conditions若要删除数据表中数据,必须使用DELETE语句,格式如下:DELETE FROM table_nameWHERE where_conditions,23,3 SQL Server 2000简介,在JSP编程过程中,可能会接触到各种不同的数据库,本节将向读者介绍一种常用的数据库管理系统SQL Server 2000。SQL Server 2000是目前市场上功能强大的关系型数据库管理系统之一,它提供了用于建立用户连接、提供数据安全性和查询请求服务的全部功能,读者所要做的只是建立一个数据库和与之相交互的应用程序,不必为具体的数据库底层的操作担心。它是独立于JS

14、P而存在的,在JSP的开发过程中,可以方便地管理数据库,而不必担心数据库的更改会影响到JSP程序的变更。,24,4 JDBC,4.1 JDBC简介JDBC(Java DataBase Connectivity,Java数据库连接)是Sun公司制定的Java连接数据库技术的简称。它是Sun公司联合数据库开发商开发出来的独立于DBMS的API(Application Programming Interface,应用程序接口),它为Java开发者使用数据库提供了统一的API。,25,JDBC提供了四种连接数据库的驱动程序方法。JDBC-ODBC桥(JDBC-ODBC Bridge)驱动程序。本机代码

15、和Java驱动程序。纯Java驱动程序。本机协议Java驱动程序。,26,4.3 JDBC编程利用JDBC实现数据库的操作一般可分为如下几个步骤。加载JDBC驱动程序。获取连接接口。创建Statement对象。执行Statement对象。查看返回的结果集。关闭结果集对象。关闭Statement对象。关闭连接接口。,27,数据库URL要连接一个数据库,必须指定数据库以及相应的参数。JDBC使用和网络URL类似的语法来描述数据库,格式如下:jdbc:subprotocol:data source identifier其中subprotocol表示连接数据库的驱动程序名,data source id

16、entifier表示数据源的有关信息。如下是一个利用JDBC/ODBC桥访问名为university的ODBC源数据库的例子:jdbc:odbc:universityjdbc:odbc:university?user=admin&password=123456,28,加载JDBC驱动程序利用JDBC/ODBC桥驱动程序连接SQL Server 2000数据库利用第三方JDBC驱动程序连接SQL Server 2000数据库,29,建立数据库连接建立一个数据库URL并且加载JDBC驱动程序后,可以调用DriverManager类的getConnection方法与数据库建立连接,格式如下:publ

17、ic static Connection getConnection(Stringurl)throws SQLException其中url表示所要连接的数据库的URL,该方法将抛出SQLException异常,并返回一个Connection对象。,30,创建Statement对象Statement对象主要是用来执行SQL语句,可以利用Connection对象的createStatement方法创建一个Statement对象,该方法主要有如下两种常用形式。public Statement createStatement()throws SQLExceptionpublic Statement c

18、reateStatement(intresultSetType,intresultSetConcurrency)throws SQLException,31,小结,JSP数据库应用开发是JSP开发中的重点和难点,只有掌握了数据库开发,JSP才能发挥其最大功效。本章从关系数据库出发,依次介绍了SQL语言、SQL Server 2000、JDBC驱动程序、JDBC编程,最后通过一个学籍管理系统实例介绍了如何在JSP中进行数据库应用开发。通过本章学习,读者应掌握基本的数据库知识及SQL语言知识,会利用SQL Server 2000管理数据库,并能利用JDBC在JSP中数据库应用程序。,32,习题,一

19、、填空题(1)数据库系统通常由_、_、_、_和_组成。(2)完整性规则有_、_和_。(3)要更新数据表中的数据,应使用SQL语言的_命令。(4)JDBC是_的缩写,它的中文名称是_。,33,(5)列举出几种常用的数据库管理系统_、_、_等。(6)_是关系数据库管理系统的标准操作语言。(7)数据模型可分为_、_、_和_几种。,34,二、问答题(1)数据库的定义是什么?它具有那些特点?(2)什么是数据库系统,并画出数据库系统的结构图。(3)JDBC提供了哪几种连接数据库的方法?它们的特点分别是什么?(4)利用JDBC实现数据库操作一般有哪些步骤?,35,三、编程题(1)以university数据库为例,查询系别为“计算机”的所有学生的信息,用SQL语言实现。(2)为“list.jsp”添加一个分页显示的功能,若学生记录多于10条,则分页显示,每页只显示10条记录。,36,谢谢!,结束,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号