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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

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

1、第四 章数据库设计基础第四章 数据库基础4.1 数据库基本概念建立一些有关数据库的基本概念,了解数据库的特点和基本知识。数据库管理系统是处理数据的有效工具,了解数据库、数据处理的概念和计算机数据管理的发展历程。4.1.l 数据、数据库、数据库管理系统1数据数据(Data)是指存储在某一种媒体上能够识别的物理符号。数据的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式。数据的种类很多,如文字、图形、图像、声音等;数据有多种表现形式,它们都可以经过数字化后存入计算机,换句话说,凡是能够被计算机处理的对象都可称为数据。数据的特点:有一定的结构,有型与值之分,如整型、

2、实型、字符型等。而数据的值给出了符合定型的值,如整型值15。首先,数据类型(Type)与数据值(Value)之分,数据类型给出了数据表示的类型,如整型、实型、字符型等,而数据值给出了符合给定数值类型的值,如y=5,给定变量y的固定值是5。随着计算机软件技术的发展,将多种相关数据以一定结构方式组合构成特定的数据框架,这样的数据框架称为数据结构(Data structure),数据库中在特定条件下称之为数据模式(Data schema)。2数据库(DB)数据库:是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序共享。数据库存放数据是按数据所提供的数据

3、模式存放的,具有集成与共享的特点它能构造复杂的数据结构以建立数据间内在联系与复杂的关系,从而构成数据的全局结构模式,它有如下特性:(1)数据的共享性:数据库中的数据能为多个程序共用。(2)数据的独立性:数据库中的数据与应用程序相互独立。包括数据的物理独立性和逻辑独立性。物理独立性:数据的物理结构的改变,不影响数据的逻辑结构。逻辑独立性:指数据库总体逻辑结构的改变,不需要修改相应的应用程序。(3)数据的完整性:数据库中的数据具有统一的数据控制功能,以保证数据在操作中完整无误。(4)数据的少冗余性:数据库中的数据重复少。3数据库管理系统数据库管理系统(Database Management Sys

4、tem,简称DBMS)是对数据库进行管理的系统软件,是数据库系统的核心。它建立在操作系统基础上,是位于操作系统与用户之间的一层数据管理软件,负责对数据库的数据进行统一的管理和控制,用户发出的各种操作命令,都要通过DBMS来执行。主要有如下几方面的具体功能: 1、数据模式定义 2、数据存取的物理构建 3、数据操纵 4、数据的完整性、安全性定义与检查、数据库的并发控制与故障恢复 6、数据的服务(1)数据库定义功能数据库管理系统向程序员提供数据定义语言(Data Definition Language,简称DDL),用于描述数据库的结构。(2)数据库操作功能数据库管理系统向程序员提供数据操作语言(D

5、ata Manipulation Language,简称DML),用于对数据库中的数据进行查询、追加、插入、删除、修改等操作。(3)数据库的运行管理功能数据库在建立、运用和维护时由数据库管理系统统一管理、统一控制,以保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的系统恢复。(4)数据库的建立和维护功能它包括数据库初始数据的输入、转换功能,数据库的转存、恢复功能,数据库的组织功能和性能监视、分析功能等。这些功能通常是由一些实用程序完成的。为完成以上功能,数据库管理系统一般提供相应的数据语言(Data Language),它们是:1、数据定义语言(Data Definition La

6、nguage简称DDL)。该语言负责数据的模式定义与数据的物理存取构建。2、数据操纵语言(Data Manipulation Language简称DML)。该语言负责数据的操纵,包括查询及增、删、改等操作。3、数据控制语言(Data control Language简称DCL )。该语言负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能,包括系统初启程序、文件读写与维护程序、存取路径管理程序、缓冲区管理程序、安全性控制程序、完整性检查程序、并发控制程序、事务管理程序、运行日志管理程序、数据库恢复程序等。上述数据语言按其使用方式具有两种结构形式:交互式命令语言。它的语言简单,能在终端

7、上即时操作,它又称为自含型或自主型语言。宿主型语言。它一般可嵌入某些宿主语言(Host Language)中,如C,C+和COBOL等高级过程性语言中。4数据库管理员由于数据库的共享性。因此对数据库的规划、设计、维护、监视等需要有专人管理,称他们为数据库管理员(Database Administrator简称DBA)。其主要工作如下:(1)数据库设计(Database Design)。DBA的主要任务之一是做数据库设计,具体的说是进行数据模式的设计。由于数据库的集成与其享性。因此需要有专门人员(即DBA)对多个应用的数据需求作全面的规划、设计与集成。(2)数据库维护。DBA必须对数据库中的数据

8、安全性、完整性、并发控制及系统恢复、数据定期转存等进行实施与维护。(3)改善系统性能,提高系统效率。DBA必须随时监视数据库运行状态,不断调整内部结构,使系统保持最佳状态与最高效率。当效率下降时,DBA需采取适当的措施,如进行数据库的重组、重构等。5数据库系统数据库系统(Database System简称DBS)是指引进数据库技术后的计算机系统,实现有组织地、动态地存储大量的相关数据,提供数据处理和信息资源共享。数据库系统由五部分组成:硬件系统、数据库集合、数据库管理系统及相关软件、数据库管理员和用户。这五个部分构成了一个以数据库为核心的完整运行实体,称为数据库系统,如图4.1所示。图4.1

9、数据库系统组成6数据库应用系统(Database Application System简称DBAS)利用数据库系统进行应用开发可构成一个数据库应用系统,数据库应用系统是数据库系统再加上应用软件及应用界面这三者所组成,具体包括:数据库、数据库管理系统、数据库管理员,硬件平台、软件平台、应用软件、应用界面。其中应用软件是由数据库系统所提供的数据库管理系统(软件)及数据库系统开发工具所书写而成,而应用界面大多由相关的可视化工具开发而成。4.1.2 数据库系统的发展数据管理发展经历了三个阶段:人工管理阶段、文件系统阶段和数据库系统阶段。1文件系统阶段文件系统是数据库系统发展的初级阶段,它提供了简单的数

10、据共享与数据管理能力,但是它无法提供完整的、统一的、管理和数据共享的能力。由于它的功能简单,因此它附属于操作系统而不成为独立的软件,目前一般将其看成仅是数据库系统的雏形,而不是真正的数据库系统。2层次数据库与网状数据库系统阶段从20世纪60年代末期起,真正的数据库系统层次数据库与网状数据库开始发展,它们为统一管理与共享数据提供了有力支撑,这个时期数据库系统蓬勃发展形成了有名的“数据库时代”。但是这两种系统也存在不足,主要是它们脱胎于文件系统,受文件的物理影响较大,对数据库使用带来诸多不便,同时,此类系统的数据模式构造烦琐不宜于推广使用。3关系数据库系统阶段关系数据库系统出现于20世纪70年代,

11、在80年代得到蓬勃发展,并逐渐取代前两种系统。关系数据库系统结构简单,使用方便,逻辑性强物理性少,因此在80年代以后一直占据数据库领域的主导地位。但是由于此系统来源于商业应用,适合于事务处理领域而对非事务处理领域应用受到限制。因此在80年末期兴起与应用技术相结合的各种专用数据库系统。工程数据库系统:是数据库与工程领域的结合;图形数据库系统:是数据库与图形应用的结合;图像数据库系统:是数据库与图像应用的结合;统计数据库系统:是数据库与工程应用的结合;知识库系统:是数据库与人工智能应用领域的结合;分布式数据库系统:是数据库与网络应用的结合;并行数据库系统:是数据库与多机并行应用的结合;面向对象数据

12、库系统:是数据库与面向对象方法的结合。4.1.3 数据库系统的基本特点数据库技术是在文件系统基础上发展产生的,两者都以数据文件的形式组织数据,但由于数据库系统在文件系统之上加入了DBMS对数据进行管理,从而使得数据库系统具有以下特点:1数据的集成性数据库系统的数据集成性主要表现在如下几个方面:(1)在数据库系统中采用统一的数据结构方式,如在关系数据库中采用二维表作为统一结构方式。(2)在数据库系统中按照多个应用的需要组织全局的统一数据结构(即数据模式),数据模式不仅可以建立全局的数据结构,还可以建立数据间的语义联系从而构成一个内在紧密联系的数据整体。(3)数据库系统中的数据模式是多个应用共同的

13、、全局的数据结构,而每个应用的数据则是全局结构中的一部分,称为局部结构(即视图),这种全局与局部的结构模式构成了数据库系统数据集成性的主要特征。2数据的高共享性与低冗余性由于数据的集成性使得数据可为多个应用所共享,特别是在网络发达的今天,数据库与网络的结合扩大了数据关系的应用范围。数据的共享自身又可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。所谓数据的一致性是指在系统中同一数据的不同出现应保持相同的值,而数据的不一致性指的是同一数据在系统的不同拷贝处有不同的值。因此,减少冗余性以避免数据的不同出现是保证系统一致性的基础。3数据独立性数据独立性是数据与程

14、序间的互不依赖性,即数据库中数据独立于应用程序不依赖于应用程序。也就是说,数据的逻辑结构、存储结构与存取方式的改变不会影响应用程序。数据独立性一般分为物理独立性与逻辑独立性两种。(1)物理独立性:物理独立性即是数据的物理结构(包括存储结构、存取方式等)的改变,如存储设备的更换、物理存储的更换、存取方式改变等都不影响数据库的逻辑结构,从而不致引起应用程序的变化。(2)逻辑独立性:数据库总体逻辑结构的改变,如修改数据模式、增加新的数据类型、改变数据间联系等,不需要相应修改应用程序,这就是数据的逻辑独立性。4数据统一管理与控制数据库系统不仅为数据提供高度集成环境,同时它还为数据提供统一管理的手段,这

15、主要包含以下三个方面:(1)数据的完整性检查:检查数据库中数据的正确性以保证数据的正确。(2)数据的安全性保护:检查数据库访问者以防止非法访问。(3)并发控制:控制多个应用的并发访问所产生的相互干扰以保证其正确性。4.1.4 数据库系统的内部结构体系数据库系统在其内部具有三级模式及二级映射,三级模式分别是概念级模式、内部级模式与外部级模式,二级映射则分别是概念级到内部级的映射以及外部级到概念级的映射。1数据库系统的三级模式模式描述的是数据全局的逻辑结构,决定了DBMS的功能,外模式涉及的仅是局部的逻辑结构,是模式的子集,是对模式的调用。数据模式是数据库系统中数据结构的一种表示形式,它具有不同的

16、层次与结构方式。(1)外模式。外模式(External Schema)也称子模式(Subschema)或用户模式(Users schema),指数据库中用户所看到的数据结构,用户看到的数据视图。由概念模式推导而出的。(2)概念模式。概念模式(Conceptual Schema)是数据库系统中全局数据逻辑结构的描述,是全体用户(应用)公共数据视图。此种描述是一种抽象的描述,它不涉及具体的硬件环境与平台,也与具体的软件环境无关。概念模式主要描述数据的概念记录类型以及它们的关系,它还包括一些数据间的语义约束,对它的描述可用DBMS中的DDL语言定义。(3)内模式。内模式(Internal Schem

17、a),或存储模式(storage schema),又称物理模式(Physical Schema),是指数据在数据库系统内的存储介质上的表示,既对数据的物理结构和存取方式的描述。数据模式给出了数据库的数据框架结构,数据是数据库中真正的实体,但这些数据必须按框架所描述的结构组织,以概念模式为框架所组成的数据库叫概念数据(Conceptual Database),以外模式为框架所组成的数据库叫用户数据库(users Database),以内模式为框架所组成的数据库叫物理数据库(Physical Database)。这三种数据库中只有物理数据库是真实存在于计算机外存中,其他两种数据库并不真正存在于计算

18、机中,而是通过两种映射由物理数据库映射而成。模式的三个级别层次反映了模式的三个不同环境以及它们的不同要求,其中内模式处于最底层,它反映了数据在计算机物理结构中的实际存储形式,概念模式处于中层,它反映了设计者的数据全局逻辑要求,而外模式处于最外层,它反映了用户对数据的要求。2数据库系统的两级映射数据系统的三级模式是对数据进行三个层次抽象的工具。通过三级模式,把对数据的具体组织留给DBMS来完成,使得用户能在高层次上处理数据的逻辑结构,而不必关心数据的物理结构。为了实现这三个层次之间的关系,DBMS在沟通三级模式中提供了两个映像:外模式概念模式映像概念模式内模式映像外模式模式的映像定义了某个外模式

19、多和概念模式之间的对应关系。这些映像的定义通常包含在各自的外模式中。当概念模式改变时,外模式模式的映像要做出相应的改变,以包正外模式的不改变性。模式内模式的映像定义了数据结构和存储结构之间的对应关系。(1)概念模式到内模式的映射。该映射给出了概念模式中数据的全局逻辑结构到数据的物理存储结构间的对应关系,此种映射一般由DBMS实现。(2)外模式到概念模式的映射。概念模式是一个全局模式而外模式是用户的局部模式。一个概念模式中可以定义多个外模式,而每个外模式是概念模式的一个基本视图。外模式到概念模式的映射给出了外模式与概念模式的对应关系,这种映射一般也是由DBMS来实现的。4.2 数据模型4.2.1

20、 数据模型基本概念 数据模型:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。 数据模型按不同的应用层次分成三种类型,它们是概念数据模型(conceptual data model)、逻辑数据模型(logic data model)、物理数据模型(physical data model)。概念数据模型简称概念模型,它是一种面向客观世界、面向用户的模型;它与具体的数据库管理系统无关,与具体的计算机平台无关。概念模型着重于对客观世界复杂事物的结构描述及它们之间内在联系的刻画。概念模型是整个数据模型的基础。目前,较为有名的概念模型

21、有ER模型、扩充的ER模型、面向对象模型及谓词模型等。逻辑数据模型又称数据模型,它是一种面向数据库系统的模型,该模型着重于在数据库系统一级的实现。概念模型只有在转换成数据模型后才能在数据库中得以表示。目前,逻辑数据模型也有很多种,较为成熟并先后被人们大量使用过的有:层次模型、网状模型、关系模型、面向对象模型等。物理数据模型又称物理模型,它是一种面向计算机物理表示的模型,此模型给出了数据模型在计算机上物理结构的表示。4.2.2 E-R模型概念模型是面向现实世界的,它的出发点是有效和自然地模拟现实世界,给出数据的概念化结构。长期以来被广泛使用的概念模型是E-R模型(entity-relations

22、hip model)(或实体联系模型),它于1976年由Peter Chen首先提出。该模型将现实世界的要求转化成实体、联系、属性等几个基本概念,以及它们间的两种基本联接关系,并且可以用一种图非常直观地表示出来。1E-R模型联接关系E-R模型由实体、联系、属性三者结合起来表示现实世界。1实体的描述(1)实体:客观存在的事物就是实体。比如,一个学生、学校、汽车等。(2)实体的属性:实体所具有的特性。比如,学生实体可以用学号、姓名、籍贯、出生日期等属性来描述。(3)联系:实体之间的关系,分为实体内部各个属性之间的联系和实体之间的联系两种。2实体间的联系及联系的种类实体之间的联系可以分为3种类型:(

23、1)一对一(one to one)的联系,简记为11。:如某公民与其身份证之间的关系。(2)一对多(one to many)或多对一(many to one)联系,简记为lM(1m)或M1(m1):如某一个学生与其所学课程之间的关系。(3)多对多(many to many)联系,简记为MN或mn:如科研项目与科研人员之间的关系。E-R模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性有属性域,每个实体可取属性域内的值。E-R模型三个基本概念之间的联接关系(1)实体集(联系)与属性间的联接关系实体是概念世界中的基本单位,属性附属于实体,它本身并不构成独立单位。一个实体可以有若干个属

24、性,实体以及它的所有属性构成了实体的一个完整描述。因此实体与属性间有一定的联接关系。如在人事档案中每个人(实体)可以有:编号、姓名、性别、年龄、籍贯、政治面貌等若干属性,它们组成了一个有关人(实体)的完整描述。属性有属性域,每个实体可取属性域内的值。一个实体的所有属性取值组成了一个值集叫元组(Tuple)。在概念世界中,可以用元组表示实体,也可用它区别不同的实体。每一行表示一个实体,这个实体可以用一组属性值表示。实体有型与值之别,一个实体的所有属性构成了这个实体的型,如人事档案中的实体,它的型是由联系也可以附有属性,联系和它的所有属性构成了联系的一个完整描述。因此,联系与属性间也有联接关系。如

25、有教师与学生两个实体集间的教与学的联系,该联系尚可附有属性“教室号”。(2)实体(集)与联系实体集间可通过联系建立联接关系,一般而言,实体集间无法建立直接关系,它只能通过联系才能建立起联接关系。如教师与学生之间无法直接建立关系,只有通过“教与学”的联系才能在相互之间建立关系。在E-R模型中有三个基本概念以及它们之间的两种基本联接关系。它们将现实世界中的错综复杂的现象抽象成简单明了的几个概念与关系,具有极强的概括性和表达能力。因此,E-R模型目前已成为表示概念世界的有力工具。2E-R模型的图示法E-R模型可以用一种非常直观的图形式表示,这种图称为E-R图(entity-relationship

26、diagram)。在E-R图中我们分别用下面不同的几何图形表示E-R模型中的三个概念与两个联接关系。E-R模型的图示法:(1)实体集表示法; (2)属性表法; (3)联系表示法。在E-R图中:(1)长方形表示实体集,框内写上实体集的名称。(2)用椭圆框表示实体的属性,并用有向边把实体框及其属性框连接起来。(3)用棱形框表示实体间的联系,框内写上联系名,用无向边把棱形框及其有关的实体框连接起来,在旁边标明联系的种类。如有联系也具有属性,则把属性框和棱形框也用无向边连接起来。 学生成绩管理数据库,如图4.2所示: 学生(学号,姓名,性别,出生日期,政治面貌,籍贯) 课程(课程号,课程名,开课单位,

27、开课学期)成绩(学号,课程号,成绩)图4.2 学生成绩管理数据库E-R图数据发展时产生了三种基本的数据模型:层次模型 关系模型 网状模型4.2.3 层次模型层次模型是最早发展起来的数据库模型。层次模型(hierarchical model)的基本结构是树形结构,如图4.3所示。这种结构方式在现实世界中很普遍,如家族结构、行政组织机构,它们自项向下、层次分明。图4.3 层次模型由图中树的性质可知,任意一树结构均有下列特性:(1)每棵树有且仅有一个无双亲结点,称为根(root)。(2)树中除根外所有结点有且仅有一个双亲。因此,树结构是受到一定限制的,从ER模型观点看,它对于联系也加上了许多限制。层

28、次数据模型支持的操作主要有查询、插入、删除和更新。在对层次模型进行插入、删除、更新操作时,要满足层次模型的完整性约束条件:进行插入操作时,如果没有相应的双亲结点值就不能插入子女结点值;进行删除操作时,如果删除双亲结点值,则相应的子女结点值也被同时删除;进行更新操作时,应更新所有相应记录,以保证数据的一致性。层次模型的数据结构比较简单,操作简单;对于实体间联系是固定的、且预先定义好的应用系统,层次模型有较高的性能;同时,层次模型还可以提供良好的完整性支持。但由于层次模型形成早,受文件系统影响大,模型受限制多,物理成分复杂,操作与使用均不甚理想,它不适合于表示非层次性的联系;对于插入和删除操作的限

29、制比较多;此外,查询子女结点必须通过双亲结点。4.2.4 网状模型网状模型(Network model)的出现略晚于层次模型,用网状结构表示实体及其之间联系的模型,网状模型突破了层次模型的两点限制:允许接点有多于一个的父接点。可以有一个以上的接点没有父接点。是一个不加任何条件限制的无向图,如图4.4所示。网状模型在结构上较层次模型好,不像层次模型那样要满足严格的条件。每个联系都代表实体之间一对多的联系,系统用单向或双向环形链接指针来具体实现这种关系,可以看出网状模型虽然联系容易,但路径太多,当更改数据时,涉及相关数据太多,不易维护与重建。网状数据库适合较稳定的数据库,不适合动态数据库。图4.4

30、 网状模型4.2.5 关系模型1关系的概念关系模型采用二维表来表示,简称表。用二维表表示实体以及实体之间联系的模型称为关系模型。关系模型把各种联系都统一描述成一些二维表,即由若干行和若干列组成的表格,每一个这样的二维表格都称为一个关系,如表4.1所示就是一个关系。表4.1 职工履历表编 号姓 名籍 贯职 务工 龄基 本 工 资001张三湖北处长151000002李四广州科长10900003王五青岛副处长14950004赵六浙江副科长12800二维表由表框架(Frame)及表的元组(Tuple)组成。表框架由n个命名的属性(Attribute)组成,n称为属性元数(Arity)。每个属性有一个取

31、值范围称为值域(Domain)。表框架对应了关系的模式,即类型的概念。一个n元表框架及框架内m个元组构成了一个完整的二维表。二维表一般满足下面几个性质: 二维表中元组个数是有限的元组个数有限性。 二维表中元组均不相同元组的惟一性。 表中的任意两列不能完全相同。 列的次序可任意排列; 行的次序可任意排列; 表中的分量是不可再分割的最小数据项; 二维表属性的分量具有与该属性相同的值域;满足以上性质的二维表称为关系(Relation),以二维表为基本结构所建立的模型称为关系模型。关系模型中的一个重要概念是键(Key)或码。键具有标识元组、建立元组间联系等重要作用。在二维表中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的候选码或候选键(Candidata Key)。从二维表的所有候选键中选取一个作为用户使用的键称为主键(Primary key)或主码,一般主键也简称键或码。表A中的某属性集是某表B的键,则称该属性集为A的外键(Foreign Key)或外码。表中一定要有键,因为如果表中所有属性的子集均不是键,则表中属性的全集必为键(称为全键)。因此也一定有主键。在关系元组

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2