ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:39.26KB ,
资源ID:8679166      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8679166.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第4章数据库设计基础.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第4章数据库设计基础.docx

1、第4章数据库设计基础第4章 数据库设计基础一、数据库系统的基本概念1数据、数据库、数据库管理系统(1)数据定义:数据是描述事物的符号记录。分类 a临时性数据与计算机程序仅有短时间交互关系,随程序结束消亡,一般存放在计算机内存中。b持久性数据对系统起着长期持久作用,数据库系统中处理的就是这种持久性数据。数据的结构a型数据的型给出数据的表示类型,常见的有整型、实型、字符型,还包括将多种相关数据以一定结构方式组合构成特定的数据框架。b值数据的值给出符合给定型的值(2)数据库定义:数据库是数据的集合,具有统一的结构形式并存放在统一的存储介质,是多种应用数据的集成,并可被各个应用程序所共享。按数据所提供

2、的数据模式存放的,构造复杂的数据结构以建立数据间内在联系与复杂关系,从而构成数据的全局结构模式。(3)数据库管理系统定义数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。数据库管理系统的功能数据库管理系统是数据库系统的核心,它主要有如下几方面的具体功能:a数据模式定义负责为数据库构建模式,即为数据库构建其数据框架。b数据存取的物理构建负责为数据模式的物理存取及构建提供有效的存取方法与手段。数据操纵提供查询、插入、修改以及删除数据的功能,还具有简单运算及统计能力,与某些过程性语言结合,使其具有强大的过程性操作能力。数据的完整性、安

3、全性定义与检查数据的完整性是保证数据库中数据正确的必要条件,数据共享可能引发数据的非法使用,必须在数据使用时作必要检查,完整性和安全性的维护是数据库系统的基本功能。数据库的并发控制与故障恢复数据库能为多个应用程序服务,存在应用程序对数据库的并发操作,如果不加控制和管理,多个应用程序就会相互干扰,数据库管理系统必须对多个应用程序的并发操作作出必要的控制以保证数据不被破坏,数据库中的数据一旦遭到破坏,数据库管理系统必须有能力及时进行恢复。数据的服务数据库管理系统提供对数据库中数据的多种服务功能,如数据拷贝、转存、重组、性能监测、分析等。 数据库管理系统提供的数据语言:a数据定义语言 负责数据的模式

4、定义与数据的物理存取构建。b数据操纵语言语言负责数据的操纵,包括查询及增、删、改等操作。c数据控制语言负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能,包括系统初启程序、文件读写与维护程序、存取路径管理程序、缓冲区管理程序、安全性控制程序、完整性检查程序、并发控制程序、事务管理程序、运行日志管理程序、数据库恢复程序等。数据语言的两种结构形式:a交互式命令语言语言简单,能在终端上即时操作,又称为自含型或自主型语言。b宿主型语言一般可嵌入某些宿主语言(Host Language)中,如C/C+、Java和COBOL等高级过程性语言中。SQL(结构化查询语言)是一种介于关系代数和关系演

5、算之间的非过程性操作语言,不仅具有丰富的查询功能,还兼具数据定义和数据控制功能。此外,数据库管理系统还有为用户提供服务的服务性(Utility)程序,包括数据初始装入程序、数据转存程序、性能监测程序、数据库再组织程序、数据转换程序、通信程序等。(4)数据库管理员(DBA)数据库管理员是对数据库的规划、设计、维护、监视等进行专业管理的人员。数据库管理员的主要工作:a数据库设计数据库管理员主要任务是进行数据模式的设计,由于数据库的集成与共享性,需要专业人员对多个应用的数据库需求作全面规划、设计与集成。b数据库维护DBA必须对数据库中的数据安全性、完整性、并发控制及系统恢复、数据定期转存等实施与维护

6、。c改善系统性能,提高系统效率DBA必须随时监视数据库运行状态,不断调整内部结构,使系统保持最佳状态与最高效率。(5)数据库系统数据库系统由数据库、数据库管理系统、数据库管理员、硬件平台、软件平台构成一个以数据库为核心的完整的运行实体。硬件平台a计算机计算机是系统中硬件的基础平台,目前常用的有微型机、小型机、中型机、大型机及巨型机。b网络数据库系统今后都会以建立在网络上为主,结构形式以客户/服务器方式和浏览器/服务器方式为主。软件平台a操作系统系统的基础软件平台,目前常用的有各种UNIX(包括Linux)与Windows两种。b数据库系统开发工具为开发数据库应用程序所提供的工具,包括过程性程序

7、设计语言如 C/C+、Java等,也包括可视化开发工具VB、PB、Delphi等,它还包括与Internet Web有关的 HTML及XML等以及一些专用开发工具。c接口软件在网络环境下数据库系统中数据库与应用程序,数据库与网络间存在着多种接口,这些接口软件包括ODBC、JDBC、OLEDB、CORBA、COM、DCOM等。(6)数据库应用系统数据库应用系统由:数据库、数据库管理系统、数据库管理员、硬件平台、软件平台、应用软件、应用界面组成。应用软件是由数据库系统所提供的数据库管理系统(软件)及数据库系统开发工具所书写而成,而应用界面大多由相关的可视化工具开发而成。数据库应用系统的结构如图4-

8、1所示。图4-1 数据库系统的软硬件层次结构图2数据库系统的发展(1)文件系统阶段数据库系统发展的初级阶段,提供了简单的数据共享和数据管理能力,无法提供完整的、统一的、管理和数据共享的能力。附属于操作系统而不成为独立的软件,不是真正的数据库系统。(2)层次数据库与网状数据库系统阶段为统一管理与共享数据提供了有力支撑,这两种系统存在的主要不足是它们完全脱胎于文件系统,受文件的物理影响很大,对数据库使用带来诸多不便,且数据库模式构造繁琐,不宜于推广使用。(3)关系数据库系统阶段结构简单,使用方便,逻辑性强物理性少,由于该系统源于商业应用,适合事物处理领域而对非事务处理领域应用受到限制。关于数据管理

9、三个阶段中的软硬件背景及处理特点如表4-1所示。表4-1 数据管理三个阶段的比较人工管理文件系统数据库系统背景应用背景科学计算科学计算、管理大规模管理硬件背景无直接存取设备磁盘、磁鼓大容量磁盘软件背景没有操作系统有文件系统有数据库管理系统处理方式批处理联机实时处理批处理联机实时处理分布处理批处理特点数据管理者人文件系统数据库管理系统数据面向对象某个应用程序某个应用程序现实世界数据共享程度无共享冗余度大共享性差冗余度大共享性大冗余度小数据独立性不独立,完全依赖于程序独立性差具有高度的物理独立性和一定的逻辑独立性数据结构化无结构记录内有结构整体无结构整体结构化,用数据模型描述数据控制能力应用程序自

10、己控制应用程序自己控制由DBMS提供数据安全性、完整性、并发控制和恢复(4)数据库诸多新技术中比较重要的三个方面面向对象数据库系统:用面向对象方法构筑面向对象数据模型,使其具有比关系数据库系统更通用的能力知识库系统:用人工智能中的方法特别是用谓词逻辑知识表示方法构筑数据模型,使其模型具有特别通用的能力关系数据库系统的扩充:利用关系数据库作进一步扩展,使其在模型的表达能力与功能上有进一步的加强。3数据库系统的基本特点(1)数据的集成性数据库系统的数据集成性主要表现在如下几个方面:采用统一的数据结构方式;按照多个应用的需要组织全局的统一的数据结构(即数据模式),数据模式可建立全局的数据结构,还可以

11、建立数据间的语义联系,从而构成一个内在紧密联系的数据整体;数据模式是多个应用共同的、全局的数据结构,而每个应用的数据则是全局结构中的一部分,称为局部结构,这种全局与局部的结构模式构成了数据库系统数据集成性的主要特征。(2)数据的高共享性与低冗余性由于数据的集成性使得数据可为多个应用所共享,数据的共享自身又可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。数据的一致性是指在系统中同一数据的不同出现应保持相同的值;数据的不一致性指的是同一数据在系统的不同拷贝处有不同的值。因此,减少冗余性以避免数据的不同出现是保证系统一致性的基础。(3)数据独立性数据库中的数据

12、独立于应用程序,数据的逻辑结构、存储结构与存取方式不会影响应用程序,数据独立性分为物理独立性和逻辑独立性。物理独立性。数据物理结构的改变不至于引起应用程序的变化。逻辑独立性。数据库总体逻辑结构的改变,不需要相应修改应用程序。(4)数据统一管理与控制数据库系统不仅为数据提供高度集成环境,同时它还为数据提供统一管理的手段,这主要包含以下三个方面:数据的完整性检查:检查数据库中数据的正确性以保证数据的正确。数据的安全性保护:检查数据库访问者以防止非法访问。并发控制:控制多个应用的并发访问所产生的相互干扰以保证其正确性。4数据库系统的内部结构体系(1)数据库系统的三级模式数据模式是数据库系统中数据结构

13、的一种表示形式,它具有不同的层次与结构方式。概念模式概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。是一种抽象的描述,它不涉及具体的硬件环境与平台,也与具体的软件环境无关。主要描述数据的概念记录类型以及它们间的关系,它还包括一些数据间的语义约束,对它的描述可用DBMS中的DDL语言定义。外模式(子模式或用户模式)它是用户的数据视图,也是用户所见到的数据模式,由概念模式推导而出。概念模式给出了系统全局的数据描述而外模式则给出每个用户的局部数据描述。一个概念模式可以有若干个外模式,每个用户只关心与它有关的模式,这样不仅可以屏蔽大量无关信息而且有利于数据保护。在一般的DBMS中

14、都提供有相关的外模式描述语言(外模式DDL)。内模式(物理模式)它给出了数据库物理存储结构与物理存取方法,内模式的物理性主要体现在操作系统及文件级上,它还未深入到设备级上。对一般用户是透明的,但它的设计直接影响数据库的性能。一般提供相关的内模式描述语言(内模式DDL)。a以概念模式为框架所组成的数据库叫概念数据库,以外模式为框架所组成的数据库叫用户数据库,以内模式为框架所组成的数据库叫物理数据库。只有物理数据库真实存在于计算机外存中,其它两个数据库不是真实存在于计算机中,而是通过两种映射由物理数据库映射而成。b内模式处于最底层,它反映了数据在计算机物理结构中的实际存储形式,概念模式处于中层,它

15、反映了设计者的数据全局逻辑要求,而外模式处于最外层,它反映了用户对数据的要求。(2)数据库系统的两级映射概念模式到内模式的映射该映射给出概念模式中数据的全局逻辑结构到数据的物理存储结构间的对应关系,此种映射一般由DBMS实现。外模式到概念模式的映射概念模式是一个全局模式而外模式是用户的局部模式。一个概念模式中可以定义多个外模式,而每个外模式是概念模式的一个基本视图。外模式到概念模式的映射给出了外模式与概念模式的对应关系,这种映射一般也是由DBMS来实现的。二、数据模型1数据模型的基本概念(1)数据模型的概念数据库中的数据模型可以将复杂的现实世界要求反映到计算机数据库中的物理世界,这种反映是一个

16、逐步转化的过程。它分为两个阶段:由现实世界开始,经历信息世界而至计算机世界,从而完成整个转化。现实世界现实世界是指用户为了某种需要,需将现实世界中的部分需求用数据库实现,这样,我们所见到的是客观世界中的划定边界的一个部分环境。信息世界信息世界是指通过抽象对现实世界进行数据库级上的刻画所构成的逻辑模型,与数据库的具体模型有关。计算机世界计算机世界是指在信息世界基础上致力于其在计算机物理结构上的描述,从而形成的物理模型。现实世界的要求只有在计算机世界中才得到真正的物理实现,而这种实现是通过信息世界逐步转化得到的。(2)数据模型描述的内容数据结构主要描述数据的类型、内容、性质以及数据间的联系等。它是

17、数据模型的基础,数据操作与约束均建立在数据结构上。数据操作主要描述在相应数据结构上的操作类型与操作方式。数据约束主要描述数据内数据间的语法、语义联系,它们之间的制约与依存关系,以及数据动态变化的规则,以保证数据的正确、有效与相容(3)数据模型分类概念数据模型(概念模型)它是一种面向客观世界、面向用户的模型;与具体的数据库管理系统无关,与具体的计算机平台无关;着重于对客观世界复杂事物的结构描述及它们之间的内在联系的刻画;是整个数据模型的基础。目前,较为有名的概念模型有E-R模型、扩充的E-R模型、面向对象模型及谓词模型等。逻辑数据模型(数据模型)它是一种面向数据库系统的模型,该模型着重于在数据库

18、系统一级的实现。概念模型只有在转换成数据模型后才能在数据库中得以表示。逻辑数据模型也有很多种,较为成熟并先后被人们大量使用过的有:层次模型、网状模型、关系模型、面向对象模型等。物理数据模型(物理模型)它是一种面向计算机物理表示的模型,此模型给出了数据模型在计算机上物理结构的表示。2E-R模型该模型将现实世界的要求转化成实体、联系、属性等几个基本概念,以及它们间的两种基本连接关系,并且可以用一种图非常直观地表示出来。(1)E-R模型的基本概念实体现实世界中的事物可以抽象成为实体,实体是概念世界中的基本单位,它们是客观存在的且又能相互区别的事物。凡是有共性的实体可组成一个集合称为实体集属性属性刻画

19、了实体的特征,一个实体往往可以有若干个属性。每个属性可以有值,一个属性的取值范围称为该属性的值域。联系现实世界中事物间的关联称为联系。在概念世界中联系反映了实体集间的一定关系。a实体集间的联系有多种,就实体集的个数而言有:第一,两个实体集间的联系两个实体集间的联系是一种最为常见的联系。第二,多个实体集间的联系这种联系包括三个实体集间的联系以及三个以上实体集间的联系。第三,一个实体集内部的联系一个实体集内有若干个实体,它们之间的联系称实体集内部联系。b两个实体集间的联系实际上是实体集间的函数关系,这种函数关系可以有以下几种:第一,一对一的联系,简记为1:1。这种函数关系是常见的函数关系之一,如学

20、校与校长间的联系,一个学校与一个校长间相互一一对应。第二,一对多或多对一联系,简记为1:M或M:1。这两种函数关系实际上是一种函数关系,如学生与其宿舍房间的联系是多对一的联系(反之,则为一对多联系),即多个学生对应一个房间。第三,多对多联系,简记为M:N这是一种较为复杂的函数关系,如教师与学生这两个实体集间的教与学的联系是多对多的,因为一个教师可以教授多个学生,而一个学生又可以受教于多个教师。(2)E-R模型三个基本概念之间的连接关系E-R模型由上面三个基本概念组成。由实体、联系、属性三者结合起来才能表示现实世界。实体集(联系)与属性间的连接关系a实体是概念世界的基本单位,属性附属于实体,一个

21、实体可以有若干个属性,实体及它的所有属性构成实体的完整描述。b属性有属性域,每个实体可取属性域内的值。一个实体的所有属性取值组成了一个值集叫元组。在概念世界中,可以用元组表示实体,也可用它区别不同的实体。c实体有型与值之别,一个实体的所有属性构成了这个实体的型,而实体中属性值的集合(即元组)则构成了这个实体的值。d联系也可以附有属性,联系和它的所有属性构成了联系的一个完整描述,因此,联系与属性间也有连接关系。实体(集)与联系a实体集间可通过联系建立连接关系,实体集间无法建立直接关系,它只能通过联系才能建立起连接关系。b在E-R模型中有三个基本概念以及它们之间的两种基本连接关系。它们将现实世界中

22、的错综复杂的现象抽象成简单明了的几个概念与关系,具有极强的概括性和表达能力。(3)E-R模型的图示法在E-R图中分别用不同的几何图形表示E-R模型中的三个概念与两个连接关系。实体集表示法用矩形表示实体集,在矩形内写上该实体集的名字。属性表示法用椭圆形表示属性,在椭圆形内写上该属性的名称。联系表示法用菱形(内写上联系名)表示联系。实体集(联系)与属性间的连接关系属性依附于实体集,因此,它们之间有连接关系。实体集与联系间的连接关系实体集与联系间的连接关系可用连接这两个图形间的无向线段表示。两个实体集间联系叫二元联系,多个实体集间联系叫多元联系。3层次模型层次模型的基本结构是树形结构,自顶向下,层次

23、分明。(1)树结构的特性每棵树有且仅有一个无双亲结点,称为根。树中除根外所有结点有且仅有一个双亲。(2)层次模型的完整性约束条件进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值;进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除;进行更新操作时,应更新所有相应记录,以保证数据的一致性。(3)层次模型的优缺点优点:结构比较简单,操作简单;对于实体间联系是固定的、且预先定义好的应用系统,层次模型有较高的性能;层次模型还可以提供良好的完整性支持。缺点:受文件系统影响大,模型受限多,物理成分复杂,不适合表示非层次性的联系;对于插入和删除操作的限制比较多;查询子女结点必须通过

24、双亲结点。4网状模型(1)网状模型是一个不加任何条件限制的无向图。将通用的网络拓扑结构分成一些基本结构,分解方法是将一个网络分成若干个二级树(2)在网状模型标准中,基本结构简单二级树叫系,系的基本数据单位是记录,它相当于E-R模型中的实体(集);记录又可由若干数据项组成,它相当于E-R模型中的属性。(3)系由一个首记录和若干成员记录组成首记录相当于简单二级树的根;成员记录,它相当于简单二级树中的叶;首记录与成员记录之间的联系用有向线段表示,在系中首记录与成员记录间是一对多联系。5关系模型(1)关系的数据结构关系模型中二维表的组成二维表由表框架及表的元组组成。表框架由n个命名的属性组成,n称为属

25、性元数。每个属性有一个取值范围称为值域。表框架对应了关系的模式,即类型的概念。表框架中,按行存放数据,每行数据称为元组,一个表框架可以存放m个元组,m称为表的基数。二维表满足的性质:a二维表中元组个数是有限的元组个数有限性。b二维表中元组均不相同元组的唯一性。c二维表中元组的次序可以任意交换元组的次序无关性。d二维表中元组的分量是不可分割的基本数据项元组分量的原子性。e二维表中属性名各不相同属性名唯一性。f二维表中属性与次序无关,可任意交换属性的次序无关性。g二维表属性的分量具有与该属性相同的值域分量值域的同一性。满足以上7个性质的二维表称为关系,以二维表为基本结构所建立的模型称为关系模型。键

26、a二维表中凡能唯一标识元组的最小属性集称为该表的键,键具有标识元组,建立元组间联系等重要作用。b二维表中可能有若干个键,它们称为表的候选键,从二维表汇总选取一个作为用户使用的键称为主键c关系元组分量中允许出现空值以表示信息空缺。一般关系数据库系统都支持空值,但是有两个限制:第一,关系的主键不允许出现空值;第二,需要定义有关空值的运算。(2)关系操纵数据查询a对一个关系内的查询第一,对一个关系内查询的基本单位是元组分量,其基本过程是先定位后操作。第二,定位包括纵向定位和横向定位,纵向定位是指定关系中的一些属性,横向定位是选择满足某些逻辑条件的元组。通过纵向与横向定位后一个关系中的元组分量即可确定

27、了。在定位后即可进行查询操作,就是将定位的数据从关系数据库中取出并放入至指定内存。b对多个关系间的数据查询对多个关系间的数据查询则可分为三步:第一,将多个关系合并成一个关系;第二,对合并后的一个关系作定位;第三,操作。数据删除第一,数据删除的基本单位是一个关系内的元组,它的功能是将指定关系内的指定元组删除。第二,分为定位与操作两部分,其中定位部分只需要横向定位而无需纵向定位,定位后即执行删除操作。因此数据删除可以分解为一个关系内的元组选择与关系中元组删除两个基本操作。数据插入数据插入仅对一个关系而言,在指定关系中插入一个或多个元组。在数据插入中不需定位,仅需做关系中元组插入操作,因此数据插入只

28、有一个基本操作。数据修改数据修改是在一个关系中修改指定的元组与属性。数据修改不是一个基本操作,它可以分解为删除需修改的元组与插入修改后的元组两个更基本的操作。关系模型的六种基本操作:a关系的属性指定;b关系的元组选择;c两个关系合并;d一个或多个关系的查询;e关系中元组的插入;f关系中元组的删除。(3)关系中的数据约束实体完整性约束该约束要求关系的主键中属性值不为空,由关系数据库系统自动支持。参照完整性约束该约束是关系之间相关联的基本约束,不允许引用不存在的元组,由关系数据库系统自动支持。用户定义的完整性约束由关系数据库系统提供完整性约束语言,用户利用该语言写出约束条件,运行时由系统自动检查。

29、这是针对具体数据环境与应用环境由用户具体设置的约束,它反映了具体应用中数据的语义要求。三、关系代数1关系模型的基本操作关系模型有插入、删除、修改和查询四种操作,它们又可以进一步分解成六种基本操作:(1)关系的属性指定指定一个关系内的某些属性,用它确定关系这个二维表中的列,它主要用于检索或定位。(2)关系的元组的选择用一个逻辑表达式给出关系中所满足此表达式的元组,用它确定关系这个二维表的行,它主要用于检索或定位。(3)两个关系的合并将两个关系合并成一个关系。用此操作可以不断合并从而可以将若干个关系合并成一个关系,以建立多个关系间的检索与定位。(4)关系的查询在一个关系或多个关系间做查询,查询的结

30、果也为关系。(5)关系元组的插入在关系中增添一些元组,用它完成插入与修改。(6)关系元组的删除在关系中删除一些元组,用它完成删除与修改。2关系模型的基本运算(1)插入插入可用集合并运算表示为:RR(2)删除删除可用集合差运算表示为:R-R(3)修改修改关系R内的元组内容可用下面的方法实现:设需修改的元组构成关系R,则先做删除得:R-R设修改后的元组构成关系R,此时将其插入即得到结果:(R-R)R(4)查询用于查询的三个操作无法用传统的集合运算表示,需要引入一些新的运算。投影运算对于关系内的域指定可引入新的运算叫投影运算,它是一元运算。一个关系通过投影运算(并由该运算给出所指定的属性)后仍为一个关系R。R是R中投影运算所指出的那些域的列所组成的关系。选择运算。它是一个一元运算,关系R通过选择运算后仍为一个关系。这个关系是由R中那些满足逻辑条件的元组所组成。设关系的逻辑条件为F,则R满足F的选择运算可写成为:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1