第7章 数据库技术_第1页
第7章 数据库技术_第2页
第7章 数据库技术_第3页
第7章 数据库技术_第4页
第7章 数据库技术_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第七章第七章 数据库技术概述数据库技术概述本章学习目标本章学习目标1理解数据管理的相关基本概念;2了解数据库管理系统的基本组成;3理解数据库系统的基本原理和数据模型的基本概念;4了解数据库设计流程及基本的结构化查询语言。7.1 数据库系统概述数据库系统概述数据(Data):描述事物的符号记录称为数据。数据的种类有数字、文字、图形、图像、声音等。数据库(DataBase,DB):数据库是长期储存在计算机内的、有组织的、可共享的数据集合。数据库系统(DataBase System,DBS):数据库系统是指在计算机系统中引入数据库后构成的系统,一般由数据库、数据库管理系统(及其开发工具)、应用系统、

2、数据库管理员构成。数据库管理系统(DataBase Management System,DBMS):数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。DBMS的主要功能包括以下几个主要方面。1数据库的定义功能2数据操纵功能3数据库运行管理4数据库的建立和维护功能随着计算机技术的发展,数据管理经历了人工管理、文件系统、数据库系统三个发展阶段。1人工管理阶段2文件系统阶段3数据库管理阶段人工管理阶段人工管理阶段(1)计算机系统不提供对用户数据的管理功能。(2)数据不能共享。(3)不单独保存数据。文件系统阶段文件系统阶段(1)数据以“文件”形式

3、可长期保存在外部存储器的磁盘上。(2)数据的逻辑结构与物理结构有了区别,但比较简单。(3)文件组织已多样化。有索引文件、链接文件和直接存取文件等。(4)数据不再属于某个特定的程序,可以重复使用,即数据面向应用。数据库管理阶段数据库管理阶段(1)采用数据模型表示复杂的数据结构。(2)有较高的数据独立性。(3)数据库系统为用户提供了方便的用户接口。(4)数据库系统提供了数据控制功能。数据库系统的构成数据库系统的构成数据库系统主要是由四部分组成:用户、数据库应用程序、数据库管理系统和数据库。7.2 数据模型数据模型数据需要通过人们认识、理解、抽象、规范和加工后,才能以数据库的形式放入计算机中。这一系

4、列的加工过程主要借助数据模型来完成。数据模型的三要素数据模型的三要素(1)数据结构:数据模型中的数据结构主要描述数据的类型、内容、性质、数据间的联系等。数据结构是数据模型的基础,是所研究的对象类型的集合,它包括数据的内部组成和对外联系。数据操作和约束都建立在数据结构上,不同的数据结构具有不同的操作和约束。(2)数据操作:数据操作是指对数据库中各种数据对象允许执行的操作集合,数据模型中数据操作主要描述在相应的数据结构上的操作类型和操作方式两部分内容。(3)数据约束:数据约束条件是一组数据完整性规则的集合,它是数据模型中的数据及其联系所具有的制约和依存规则。数据模型中的数据约束主要描述数据结构内数

5、据间的语法、词义联系、他们之间的制约和依存关系,以及数据动态变化的规则,以保证数据的正确、有效和相容。按照数据抽象的三个层次,数据模型也可以如下分类:1、物理层模型2、逻辑层模型3、概念层模型在数据库设计过程中被广泛使用的数据模型可分为两种类型。一种是独立于计算机系统的数据模型,它完全不涉及信息在计算机中的表示,只是用来描述某个特定组织所关心的信息结构,这类模型称为“概念数据模型”。另一种数据模型是直接面向数据库的逻辑结构,它是对现实世界的第二层抽象。这类模型直接与DBMS有关,称为“逻辑数据模型”,一般又称为“结构数据模型”。实体联系模型实体联系模型实体联系(Entity Relations

6、hip, ER)模型是P. P. Chen于1976年提出的。这个模型直接从现实世界中抽象出实体类型及实体间联系,然后用实体联系图(ER图)表示数据模型。ER图是直接表示概念模型的有力工具。层次层次模型模型用树型(层次)结构表示实体类型及实体间联系的数据模型称为层次模型(Hierarchical Model)。树的结点是记录类型,每个非根结点有且只有一个父结点。上一层记录类型和下一层记录类型之间的联系是1:n联系。网状模型网状模型用有向图结构表示实体类型及实体间联系的数据模型称为网状模型(Network Model)。网状模型的特点是记录之间联系通过指针实现,n:m联系也容易实现(一个n:m联

7、系可拆成两个1:n联系),且查询效率较高。关系模型关系模型关系模型(Relational Model)的主要特征是用二维表格表示一类实体。关系模型的数据结构的特点是:逻辑结构简单、数据独立性强、存取具有对称性、操作灵活。在数据库中的数据结构如果依照关系模型定义,就是关系数据库。关系模型是由若干个关系模式组成的集合。关系模式相当于前面提到的记录类型,它的实例称为关系,每个关系实际上是一张二维表格。7.3 关系数据库基本概念关系数据库基本概念关系数据库系统使用关系数据模型组织和管理数据。真正系统、严格地提出关系数据模型的是IBM的研究员E. F. Codd,他从1970年起发表了一系列的论文,提出

8、了数据库的关系模型,开创了数据库关系方法和关系数据理论的研究,为关系数据库的发展和理论研究奠定了基础。关系模型基本概念关系模型基本概念1. 关系数据结构关系数据结构非常简单,在关系数据模型中,现实世界中的实体及实体之间的联系均用关系来表示。从逻辑或用户的观点来看,关系就是二维表。2. 关系操作集合关系数据模型中的操作包括:传统的集合运算:并(Union)、交(Intersection)、差(Difference)、广义笛卡儿积(Extended Cartesian Product);专门的关系运算:选择(Select)、投影(Project)、连接(Join)、除(Divide);有关的数据操

9、作:查询(Query)、插入(Insert)、删除(Delete)、修改(Update)。关系模型基本概念关系模型基本概念3. 关系完整性约束在数据库中数据完整性是指保证数据正确的特性。数据完整性是一种语义概念,它包括两方面的内容:(1)与现实世界中应用需求的数据的相容性和正确性;(2)数据库内数据之间的相容性和正确性。数据完整性由完整性规则来定义,而关系模型的完整性规则就是对关系的某种约束条件。在关系数据模型中一般将数据完整性分为三类,即实体完整性、参照完整性和用户定义完整性。关系(Relation):通俗地讲关系就是二维表,二维表名就是关系名。属性(Attribute):二维表中的列称为属

10、性(字段);每个属性有一个名称,称为属性名;二维表中对应某一列的值称为属性值;二维表中列的个数称为关系的元数;一个二维表如果有n列,则称为n元关系。值域(Domain):二维表中属性的取值范围称为值域。元组(Tuple):二维表中的行称为元组(记录值)。分量(Component):元组中的每一个属性值称为元组的一个分量,n元关系的每个元组有n个分量。关系模式(Relation Schema):二维表的结构称为关系模式,或者说关系模式就是二维表的表框架或结构,它相当于文件结构或记录结构。设关系名为R,其属性为A1,A2, ,An,则关系模式可以表示为:R(A1,A2, ,An)。此外,对每个Ai

11、(i = 1, ,n)还包括该属性到值域的映像,即属性的取值范围。关系模型(Relation Model):关系模型是所有的关系模式、属性名和关键字的汇集,是模式描述的对象。关系数据库(Relation Database):对应于一个关系模型的所有关系的集合称为关系数据库。候选关键字(Candidate Key):如果一个属性集的值能惟一标识一个关系的元组而又不含有多余的属性,则称该属性集为侯选关键字。候选关键字又称为候选码或候选键。在一个关系上可以有多个候选关键字。主关键字(Primary Key):有时一个关系中有多个候选关键字,这时可以选择其中一个作为主关键字,简称关键字。主关键字也称为

12、主码或主键。每一个关系都有一个并且只有一个主关键字。外部关键字(Foreign Key):如果一个属性集不是所在关系的关键字,但是是其他关系的关键字,则该属性集称为外部关键字。外部关键字也称为外码或外键。7.4 关系数据库设计关系数据库设计为了解决“软件危机”,“软件工程”的概念于1968年首次提出。软件工程中把软件开发的全过程称为“软件生存期”(Life Cycle)。具体来说,软件生存期是指从软件的规划、研制、实现、测试、投入运行后的维护,直到它被新的软件所取代而停止使用的整个期间。以数据库为基础的信息系统通常称为数据库应用系统,它一般具有信息的采集、组织、加工、抽取和传播等功能。数据库应

13、用系统的开发也是一项软件工程,但又有自己特有的特点,所以专门称为“数据库工程”。数据库系统生存期一般可划分成下面七个阶段:(1)系统规划:进行建立数据库的必要性及可行性研究,确定数据库系统在组织中和信息系统中的地位,以及各个数据库之间的关系。(2)需求分析:收集数据库所有用户的信息内容和处理需求,加以规格化和分析。在分析用户要求时,要确保用户目标的一致性。(3)概念设计:把用户的需求信息统一到一个整体逻辑结构(即概念模式)中。此结构应能表达用户的要求,且独立于DBMS软件和硬件。(4)逻辑设计:这步设计分成两部分,数据库结构设计和应用程序设计。这步设计的结构应该是DBMS能接受的数据库结构,称

14、为逻辑数据库结构。应用程序的设计是指程序模块的功能性说明,强调主语言和DML的结构化程序设计。(5)物理设计:这步设计分成两部分,物理数据库结构的选择和逻辑设计中程序模块说明的精确化。这一阶段的成果是得到一个完整的、能实现的数据库结构。对模块说明的精确化是强调进行结构化程序的开发,产生一个可实现的算法集。(6)系统实现:根据物理设计的结果产生一个具体的数据库和应用程序,并把原始数据装入数据库。应用程序的开发基本上依赖于主语言和逻辑结构,而较少地依赖于物理结构。应用程序的开发目标是开发一个可信赖的、有效的数据存取程序来满足用户的处理要求。(7)运行和维护:这一阶段主要是收集和记录系统运行状况的数

15、据,用来评价数据库系统的性能,更进一步用于对系统的修正。这一阶段,可能要对数据库结构进行修改或扩充。系统规划系统规划对于大型数据库系统或大型信息系统中的数据库群,规划阶段是十分必要的。规划的好坏将直接影响到整个系统的成功与否。规划阶段具体工作主要有:系统调查、可行性分析和确定数据库系统的总目标和制订项目开发计划。需求分析需求分析这一阶段由计算机人员(系统分析员)和用户双方共同收集数据库所需要的信息内容和用户对处理的需求,并以需求说明书的形式确定下来,作为以后系统开发的指南和系统验证的依据。需求分析的工作主要由下面四步组成:(1)分析用户活动,产生业务流程图(2)确定系统范围,产生系统范围图(3

16、)分析用户活动涉及的数据,产生数据流图(4)分析系统数据,产生数据字典概念设计概念设计概念设计的目标是产生反映企业组织信息需求的数据库概念结构,即概念模式。概念模式独立于计算机硬件结构,独立于支持数据库的DBMS。概念设计的任务一般可分为三步来完成:进行数据抽象,设计局部概念模式;将局部概念模式综合成全局概念模式;评价。逻辑设计逻辑设计逻辑设计的目的是把概念设计阶段设计好的全局概念模式转换成与选用的具体机器上的DBMS所支持的数据模型相符合的逻辑结构(包括数据库模式和外模式)。现在广泛使用的是关系数据库管理系统,即支持关系数据模型的系统。因此,在逻辑数据库设计阶段,首先将概念数据模型转换为关系

17、数据模型,即将ER图中的实体和联系转换为关系模式。逻辑数据库设计的结果是一组关系模式,接着需要应用关系规范理论对这些关系模式进行规范化处理。物理设计物理设计对于给定的基本数据模型选取一个最适合应用环境的物理结构的过程,称为物理设计。数据库的物理结构主要指数据库的存储记录格式、存储记录安排和存取方法。在关系模型系统中,物理设计比较简单一些,因为文件形式是单记录类型文件,仅包含索引机制、空间大小、块的大小等内容。系统系统实现实现对数据库的物理设计初步评价完成后就可以开始建立数据库了。数据库实现主要包括定义数据库结构、数据装载、编制与调试应用程序、数据库试运行。运行与运行与维护维护数据库投入运行标志

18、开发任务的基本完成和维护工作的开始。但这并不意味着设计过程的终结,由于应用环境在不断变化,数据库运行过程中物理存储也会不断变化,因此对数据库设计进行评价、调整、修改等维护工作是一个长期的任务,也是设计工作的继续和提高。在数据库运行阶段,对数据库经常性的维护工作主要是由DBA完成的。DBA的主要职责:数据库的转储和恢复;数据库安全性、完整性控制;数据库性能的监督、分析和改进;数据库的重组织和重构造。7.5 结构化结构化查询语言查询语言核心SQL主要包括四部分。(1)数据定义语言(DDL),即用于定义数据库模式、基本表、视图、索引等结构。(2)数据操纵语言(DML),数据操纵分为数据查询和数据更新

19、两类。其中数据更新又分成插入、删除和修改三种操作。(3)嵌入式SQL语言。这一部分内容涉及SQL语句嵌入在宿主语言程序中的规则。(4)数据控制语言(DCL),这一部分包括对基本表和视图的授权、完整性规则的描述、事务控制等内容。虽然SQL语言功能很强,但它只有为数不多的几条命令,下面列出了分类的命令动词。数据查询:SELECT,数据定义:CREATE、DROP、ALTER,数据操纵:INSERT、UPDATE、DELETE,数据控制:GRANT、REVOKE。数据定义数据定义SQL的数据定义功能包括数据对象的创建、删除和修改,这三个功能分别由CREATE、DROP和ALTER动词来实现。(1)创

20、建数据库。创建数据库的一般格式为:CREATE DATABASE (2)创建基本表的一般格式为: CREATE TABLE (列级完整性约束条件1 ,列级完整性约束条件2 ,);视图是从一个或几个基本表(或视图)导出的表。视图只存放视图的定义,不存放视图对应的数据。因此,基表中的数据发生变化,从视图中查询出的数据也随之改变。创建视图的格式如下:CREATE VIEW ( ,) AS WITH CHECK OPTION;用ALTER修改数据对象(1)修改基本表。基本表的修改遵循如下语法格式。ALTER TABLE ADD 完整性约束 DROP ALTER COLUMN ;(2)修改视图。视图的修改遵循如下语法格式。ALTER VIEW ( ,)AS WITH CHECK OPTION;数据查询数据查询SQL语言提供了SELECT语句进行数据库的查询,该语句具有灵活

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论