预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共78页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第1章关系数据库与SQL语言环境1.1关系数据库的基本概念 数据库系统成熟的标志就是数据库管理系统的出现。数据库管理系统(DataBaseManagermentSystem,简称DBMS)是对数据库的一种完整和统一的管理和控制机制。数据库管理系统不仅让我们能够实现对数据的快速检索和维护,还为数据的安全性、完整性、并发控制和数据恢复提供了保证。数据库管理系统的核心是一个用来存储大量数据的数据库。 一个真正的数据库系统由硬件和软件两个方面构成。比如我们要使用Oracle数据库,需要安装Oracle公司提供的数据库服务器软件和一台用于安装数据库管理系统的高性能的计算机服务器。 数据库系统的发展经历了层次模型、网状模型及关系模型几个阶段。当今应用最普遍的是关系型数据库管理系统。目前,市场上流行的几种大型数据库,如Oracle、DB2、Sybase、MSSQLServer等都是关系型数据库管理系统。Oracle数据库是一种面向对象的关系型数据库管理系统(ORDBMS),是基于标准SQL语言的数据库产品。 数据库和数据库管理系统实现了信息的存储和管理,还需要开发面向特定应用的数据库应用系统,以完成更复杂的信息处理任务。典型的数据库应用有C/S(客户/服务器)和B/S(浏览器/服务器)两种模式。C/S模式由客户端和服务器端构成,客户端是一个运行在客户机上的数据库应用程序,服务器端是一个后台的数据库服务器,客户端通过网络访问数据库服务器。B/S模式是基于Internet的一个应用模式,需要一个WEB服务器。客户端分布在Internet上,使用通用的网页浏览器,不需要对客户端进行专门的开发。应用程序驻留在WEB服务器或以存储过程的形式存放在数据库服务器上,服务器端是一个后台数据库服务器。 例如一个有代表性的信息检索网站,通常都是一个典型的基于大型数据库的WEB应用。很多这样的网站都采用Oracle的数据库服务器,以获得优越的性能。图1-1给出了典型的WEB数据库应用系统的结构示意图。 图1-1WEB数据库应用示意图 1.1.2实体关系模型 在数据库的设计阶段,需要创建逻辑模型。关系数据库的逻辑模型叫做实体—关系模型。实体模型化最常用的工具是实体关系图,简称E–R(Entity–Relationship)图,它是一种简单的图形技术,用来定义数据库中需要的表、字段和关系。它用于数据库设计的第一步,与我们使用的具体的数据库管理系统无关。ER图有如下优点: Ÿ有效地搜集和表示组织的信息需求。 Ÿ提供一个容易理解的系统描述图。 Ÿ易于开发和提炼。 Ÿ明确定义了信息需求的范围。 Ÿ将业务需求信息与业务执行活动分开。 根据业务说明或描述创建实体关系图。现实世界概念模型--ER模型基本概念ER模型基本概念ER模型基本概念ER模型基本概念 规范化的意义在于可以从实体中删除冗余信息,通过修改数据模型达到可以惟一地表示实体的每一种情况为止。 规范化是降低或消除数据库中冗余数据的过程。尽管在大多数的情况下冗余数据不能被完全清除,但冗余数据降得越低,就越容易维护数据的完整性,并且可以避免非规范化的数据库中数据的更新异常。数据库的规范化通过范式来验证,但是一味地考虑满足范式,也会对数据库性能产生影响,并给实际的实施带来困难。所以实际的情况是采取折衷的方法。 规范化设计的规则有三个,分别称作第一范式、第二范式和第三范式:第一范式(1NF):实体的所有属性必须是单值的并且不允许重复。 第二范式(2NF):实体的所有属性必须依赖于实体的惟一标识。 第三范式(3NF):一个非惟一标识属性不允许依赖于另一个非惟一标识属性。 在数据库的设计中,一般都采用第三范式,以保证数据的冗余最小,提高数据的完整性。 图1-4是实际设计的两张表和表间关系的示意图。教师表由教师ID、姓名和系部ID等列构成;系部表由系部ID、系部名称和地点等列构成。其中,教师ID和系部ID分别是这两张表的主键。教师表的系部ID和系部表的系部ID之间建立了外键联系,即教师表的系部ID必须是系部表的某个系部ID。 图1-4表的结构和表间关系示意 1.1.5开发数据库应用系统的步骤 下面列出了常见的数据库应用系统的开发步骤: Ÿ系统需求分析。 Ÿ设计数据库表。 Ÿ规划表中的字段。 Ÿ确定表与表之间的关系。 Ÿ优化表和表中字段的设计。 Ÿ输入数据,检测表的设计,如果需要改进可以再次优化表的设计。 Ÿ创建查询、存储过程、触发器以及其他的数据库对象。 Ÿ使用数据库分析工具来分析和改进数据库的性能。 Ÿ设置数据库安全性。 1.2SQL*Plus环境 我们假定Oracle数据库已经安装在局域网中的一台基于Windows操作系统的服