




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第一章 数据库系统概论1.1 数据处理技术发展经历数据(data)是人们描述客观事物及其活动的抽象符号表示,是人们相互之间进行思想文化交流的工具。数据处理(data processing)是人们利用手工或机器对数据进行加工的过程。对数据进行的查找、统计、分类、修改、变换等运算都属于加工。利用计算机进行数据处理,使得数据处理技术不断丰富和发展,到目前为止大致经历了以下几个不同发展阶段。1.1.1 人工管理阶段在这个时期,每个程序处理的数据都跟在该程序之后,一并被穿孔到纸带或卡片上,数据在内存中的存储格式和存储位置,读写数据的路径和方法等都需要编程者决定。当数据的存储格式和位置、读写路径和方法改变时,处理它的程序也必须作出相应的修改,以保持程序的正确性。此时期的程序完全依赖于数据,人们把这一时期的数据处理技术称为人工管理阶段。1.1.2 文件管理阶段数据与程序在存储位置上完全分开,数据被单独组织成文件保存到外部存储器上,数据文件既可以为某个程序单独使用,也可以为多个不同的程序在不同的时间所使用。即数据文件可以被任何程序重复利用。1.1.3 数据库管理阶段 把数据组织成数据库具有以下特点: 1. 数据结构化 2. 数据共享 3. 数据相对独立 4. 数据粒度小 5. 数据操作界面独立 6. 数据由DBMS统一管理DBMS是运行在操作系统之上的数据库管理系统软件,由它实施对外存上的数据库进行统一管理,并负责执行在DBMS之上开发的应用程序对数据库的全部操作。DBMS除了同操作系统配合按照用户的要求存取数据库中的数据外,主要还具有以下四个方面的管理控制功能。 (1) 安全性控制 (2) 一致性控制 (3) 并发性控制 (4) 数据库恢复1.1.4 分布式数据库管理阶段分布式数据库系统通过计算机网络和通信线路可以把分布在不同地域的、不同局域网环境下的、不同类型的数据库系统连接和统一管理起来。分布式数据库系统既支持客户的局部应用,又支持客户的全局应用。1.2 概念数据模型1.2.1 ER模型的有关概念 1. 实体 实体(entity)是现实世界中存在的、可以相互区别的事物或活动。如一个人、一本书、一辆汽车、一块手表、一次会议、一个文件等都是实体。 实体集(entity set)是指同一类实体的集合。如一个班级的全体同学、一个图书馆的全部藏书、一个停车场停放的全部车辆、一个商店手表柜台销售的所有国产手表、一年中的所有会议、一段时间签发的所有文件等都是相应的实体集。 实体型(entity type)是对同类实体的共有特征的抽象定义。 对于同一类实体,根据人们的不同认识和需要,可能抽取出的特征有所不同,因而定义出的实体型就可能不同。如你可以把人的姓名、出生日期、性别、身高、体重等特征定义为人的实体型。 实体值(entity value)就是符合实体型定义的、对一个实体的具体描述。如把人的姓名、出生日期、性别、身高、体重等特征定义为人的实体型,则“张三、1956/03/02、男、1.74、65kg” 就是该实体型的一个实体值。 2. 联系联系(relationship)是指实体之间的相互关系,它通常表示一种活动。如一张订单、一个讲座、一场比赛、一次选课等都是联系。在一张订单中涉及到商品、客户(顾客)和销售员之间的关系,即某个客户从某个销售员手里订购某件商品。在一次选课中涉及到学生和课程之间的关系,即某个学生选修某门课程。若考虑到同一门课程可能由多个不同的教师讲授,选课联系就涉及到学生、课程、教师这三个实体之间的关系,即某个学生选修某个老师教授的某门课程。 联系集(relationship set)是同一类联系的集合。如一次展销会上的全部订单、一次会议安排中的全部讲座、一次比赛活动中的所有比赛场次、一个班级同学的所有选课等都是相应的联系集。联系型(relationship tpe)是对同类联系的共有特征的抽象定义。 联系元数就是一个联系中所涉及的实体型的个数。若涉及到两个实体型则称为二元联系,若涉及到三个实体型则称为三元联系,等等。特殊地,若涉及到的两个实体型对应同一个实体则为一元联系。实体和联系的异同 实体和联系实际上没有什么本质的区别,它们都是由相应的特征标识的,都具有型和值的概念,只不过在联系中含有较多的联系特征,如在选课联系中含有学生号、课程号等联系特征,通过联系特征与其他实体发生联系。 3. 属性属性(attribute)是描述实体或联系中的一种特征,一个实体或联系通常具有多个特征,需要多个相应属性来描述。如描述“人”这个实体需要使用姓名、性别、年龄、籍贯、职业、学历、住址、电话等属性。码(key)或称键、关键字、关键码等,是实体间相互区别的一种唯一标识。如人是实体,每个人的身份证号就是这种唯一标识,因为每个人的身份证号都不会相同。域(domain)是实体中相应属性的取值范围。 4. 联系分类 联系分类(relationship classify)是讨论两个实体型(含联系型在内)之间的联系的类别。按照一个实体型中的实体个数与另一个实体型中的实体个数的对应关系,可分类为1对1联系、1对多联系、多对多联系这三种情况。 (1) 1对1联系若一个实体型中的一个实体至多与另一个实体型中的一个实体发生关系,同样另一个实体型中的一个实体至多与该实体型中的一个实体发生关系,则这两个实体型之间的联系被定义为1对1联系,简记为1:1。例如,公司同总经理之间就是1对1联系,每个公司最多有一个总经理,若暂缺总经理则为空(NULL)。 (2) 1对多联系若一个实体型中的一个实体与另一个实体型中的任意多个实体(含0个)发生关系,而另一个实体型中的一个实体至多与该实体型中的一个实体发生关系,则这两个实体型之间的联系被定义为1对多联系,简记为1:n。表1-2-6 职工表职工号姓名性别职务职工号姓名性别职务3021王亮男经理3025刘敏女销售员3022赵平男销售科长3026赵红男采购员3023马英女供应科长3027孙福男采购员3024孙万男销售员3028魏江女采购员图1-2-3 领导与被领导联系图 (3) 多对多联系 若一个实体型中的一个实体与另一个实体型中的任意多个实体(含0个)发生关系,反过来也一样,另一个实体型中的一个实体与该实体型中的多个实体(含0个)实体发生关系,则这两个实体型之间的联系被定义为多对多联系,简记为m:n。 表1-2-7 学生表 表1-2-8 课程表学号姓名性别专业课程号课程名学分4051王平女经管C001高等数学64052赵路男经管C002会计学54061邱华女计算机C003管理学44062宁静女计算机C004程序设计基础34063张宇男计算机C005数字电路44071刘兵男电子图1-2-4 选课联系图1.2.2 ER模型ER模型(entity relationship model)是人们描述数据及其联系的概念数据模型,是数据库应用系统设计人员和普通非计算机专业用户进行数据建模和勾通与交流的有力工具,使用起来非常直观易懂、简单易行。 1. ER模型中的基本构件 ER模型是一种用图形表示数据及其联系的方法,所使用的图形构件(元件)包括矩形、菱形、椭圆形和连接线。 矩形表示实体,矩形框内写上实体名。 菱形表示联系,菱形框内写上联系名。 椭圆形表示属性,椭圆形框内写上属性名。 连接线表示实体、联系与属性之间的所属关系或实体与联系之间的相连关系。 2. 各种联系的ER图表示 对于1对1、1对多和多对多三种联系,对应的ER图如图1-2-5所示,其中每个实体或联系未画出相应的属性框和连线。图1-2-5 三种联系的ER图有时三个实体间,两两存在着不同类型的联系。如对于学生、课程和教师这三个实体,若规定每个学生可以选择多门课程,每门课程可以被多个学生选修,每门课程唯一对应一个任课教师,一个教师可以讲授多门课程,这样学生与课程之间就是多对多的联系,课程和教师之间就是多对1联系,而学生和教师之间的联系无须单独给出,它可以通过其他两个联系推导出来,学生和教师之间也间接存在着多对多的联系。根据以上分析,得到学生、课程和教师这三个实体之间的联系所对应的ER图如图1-2-8所示,其中在每个实体或联系上给出了一个属性,其他属性未被画出。图1-2-8 学生选课的ER图在图1-2-8中,选课联系中的属性成绩表示某个学生选修某门课程的考试成绩,讲授联系中的属性教材表示教师讲授某门课程所选用的教材。若要从图1-2-8中查找某个学生所选某门课程的任课教师,首先通过选课联系查找出相应的课程,再通过讲授联系查找到对应的任课教师。1.3 逻辑数据模型在计算机系统中,用于对数据库进行管理的软件系统称为数据库管理系统(DBMS)。现在世界上有很多数据库管理系统软件产品,如FoxBase、FoxPro、Access、SQL Server、Oracle、DB2、Sybase、Informix等。它们都是基于某种逻辑数据模型的,或者说它们管理的数据库是按照某种逻辑数据模型而建立和组织的。数据库的逻辑数据模型又称数据库的结构数据模型,或直接简称为数据模型(data model)。到目前为止,相继出现有层次、网状、关系和对象这4种主要数据模型。1.3.1 层次数据模型 层次模型是一个树型结构模型,整棵树中有并且只有一个根结点,其余结点都是它的孩子或子孙;每个结点(除根结点外)只能有一个双亲结点(或称父结点),但可以有一个或多个孩子结点,当然也允许没有任何孩子结点,无孩子结点被称为叶子结点;每个结点对应一个记录型,即对应概念模型中的一个实体型,每对结点的父子联系隐含为1对多的联系(包括1对1联系)。信息学院华侨大学机电学院建筑学院教务处学生处招生处校办电子系电气系通信系电子06(1) 电子06(2) 电子09(3) 图1-3-2 学校层次结构模型1.3.2 网状数据模型网状模型是一个图结构模型,它是对层次模型的扩展,允许有多个结点无双亲,同时也允许一个结点有多个双亲。层次模型成为网状模型中的一种最简单的情况。1.3.3 关系数据模型 关系数据模型有着坚实的理论支持,它是建立在集合论、数理逻辑、关系理论等数学理论基础之上的。并且关系数据模型结构简单,符合人们的逻辑思维方式,很容易被人们所接受和使用,很容易在计算机上实现,很容易从概念数据模型转换过来。 1. 关系数据模型的定义关系模型是一种简单的二维表格结构,概念模型中的每个实体和实体之间的联系都可以直接转换为对应的二维表形式。每个二维表称做一个关系,一个二维表的表头,即所有列的标题称为关系的型(结构),其表体(内容)称做关系的值。关系中的每一行数据(记录)称做一个元组,每一列数据称做一个属性,列标题称做属性名。同一个关系中不允许出现重复元组(即两个完全相同的元组)和相同属性名的属性(列)。表1-3-1 一个关系事例职工号姓名性别年龄职务3050张光男36正处3051刘平男48副处3074王海男32正科3065陈敏女43副处3053刘新女28科员3066蔡忠男36科员 2. 关系数据模型应用举例关系模型不仅容易表示概念模型中的每个实体,而且容易表示每一种类型的联系,它们都同样对应一个关系,该关系中必定包含相联系的每个实体的各一个码。如表1-2-7、表1-2-8和图1-2-4表示的学生、课程及选课联系,其对应的ER图如图1-3-4所示,对应的关系模型包含三个关系,其中学生关系和课程关系仍为表1-2-7和表1-2-8所示,选课联系所对应的关系如表1-3-2所示,在此给选课联系增加了成绩属性,它的语义是某个学生选修某门课程所取得的百分制下的分数。图1-3-4 选课联系的ER图表1-3-2 选课联系的关系表学号课程号成绩学号课程号成绩4051C001784061C005634051 C002644062C002784052C002964062C004904052C003784063C004884061C003754063C005764061C004824071C00575 3. 关系型的关系定义在以关系模型为数据库逻辑结构建立的数据库系统中,所有数据都是以关系(表)的形式定义和保存的,特别是所有关系的定义(即结构,它是关系的型)也同样是以关系的形式定义和保存的。为了区别于一般的保存数据的关系,把保存关系定义的关系称为该数据库的元关系、元数据、系统数据、数据字典等,它提供了数据库中所有关系的模式(即关系的型)。元关系是在用户建立数据库应用系统时,由DBMS根据该数据库中每个关系的模式自动定义的。如对于上述建立的学生选课关系模型,由各关系的型所定义的元关系大致如表1-3-3所示。表1-3-3 学生选课关系模型的元关系序号属性名类型长度关系名1学号N4学生2姓名C6学生3性别C2学生4专业C6学生5课程号C4课程6课程名C12课程7学分N1课程8学号N4选课9课程号C4选课10成绩N3选课在表1-3-3中,序号是对每一个属性定义所在元组的编号,属性名给出每个关系中的属性,类型给出相应属性的取值范围(即域),一般比域的取值范围要广,而且能够被计算机语言所实现,这里用N和C分别表示数值类型和字符类型,长度给出相应属性取值最多所占用的存储字节数,超过此字节数的后面多余部分被自动舍去,关系名给出相应属性所属的关系。 4. 关系模型中的查询和更新在关系模型的数据库中进行查询和更新运算是非常灵活与方便的,用户即可以在每个关系上进行,也可以在相关的若干个关系上进行,相关的关系是靠关系之间共同使用的相同属性来实现的,该相同属性被称为连接属性或关联属性。如对于学生选课关系模型,既可以分别在学生、课程、选课这三个单独的关系上进行查询和更新,也可以通过它们之间的连接属性学号和课程号把两个或三个关系连接起来进行查询和更新。假定要按一个学生的姓名查询他的全部选修课程名及相应成绩,则应首先把学生关系和选课关系通过学号连接起来,再把这个新关系同课程关系通过课程号连接起来,得到的最新关系如表1-3-4所示,经过查询得到结果关系。假定查询邱华同学的选课情况则如表1-3-5所示。表1-3-4 连接三个关系后得到的新关系学号姓名性别专业课程号课程名学分成绩4051王平女经管C001高等数学6784051 王平女经管C002会计学5644052赵路男经管C002会计学5964052赵路男经管C003管理学4784061邱华女计算机C003管理学4754061邱华女计算机C004程序设计基础3824061邱华女计算机C005数字电路4634062宁静女计算机C002会计学5784062宁静女计算机C004程序设计基础3904063张宇男计算机C004程序设计基础3884063张宇男计算机C005数字电路4764071刘兵男电子C005数字电路475表1-3-5 得到的查询结果关系 5. 关系数据模型的特点 采用关系模型建立数据库系统具有以下特点,也称为优点。 (1) 数据结构单一 (2) 采用集合运算 (3) 数据完全独立 (4) 数学理论支持1.3.4 对象数据模型 在面向对象模型中,对象也有型和值的区别,对象型(又称为类)是对具有共同特征的事物的抽象定义(描述),对象值就是对象型中的一个具体事物(实体)。如学生对象型由所含的属性特征和行为特征的定义组成,学生对象值表示某个具体的学生,他符合对象型的定义。 对象具有封装性、继承性和多态性,这些特性都是传统数据模型中的记录所不具备的,这也是面向对象模型区别于传统数据模型的本质特征。1.4 数据库系统简介1.4.1 数据库系统构成数据库系统(data base system,简称DBS)是指安装了数据库和数据库管理系统的计算机系统。数据库管理系统在计算机操作系统的支持下对保存于外部设备上的、由物理数据文件所组成的数据库进行有效地管理、维护和使用。在数据库管理系统之上通常需要有数据库应用系统开发工具软件,应用程序员使用它,或者直接使用由DBMS所提供的数据库语言和开发环境编制程序建立数据库应用系统。数据库应用系统通常提供可视化操作界面供终端用户使用,进行日常数据处理工作。层次结构大致如下: 终端用户 数据库应用系统 数据库应用开发工具 数据库管理系统 操作系统 数据库 硬件 图 1-4-1 数据库系统的层次结构1.4.2 数据库系统用户 使用数据库系统通常包括四种类型的用户。 (1)数据库管理员(DBA),他负责整个数据库系统的建立、管理、运行、维护、监控等系统性工作,以及用户登记、存取数据权限分配等服务性工作。 (2)数据库设计员,他根据数据库在某一方面的应用,通过同相关业务人员一起进行需求分析,建立概念数据模型和逻辑数据模型,搜集和整理数据,利用计算机中的数据库管理系统和数据库定义语言或操作界面建立相应的数据库应用系统。 (3)应用程序员,它根据已有的数据库系统,利用VisualBasic、PowerBuilder、Delphi等数据库应用系统开发工具编制程序开发出功能丰富、操作简便、满足用户需求的应用系统,供终端用户使用。 (4)终端用户,他是使用数据库的最广泛群体,是建立数据库为之服务的对象。如银行出纳员、窗口售票员、仓库管理员、住宿登记员等都是相应数据库系统的终端用户。1.4.3 数据库体系结构 在数据库的三级模式结构中,中间层叫做模式(schema)、或概念模式、逻辑模式、全局模式等。它是对整个数据库逻辑结构和特征的描述,用户以DBMS支持的逻辑数据模型为基础,以DBMS提供的模式描述(定义)语言(DDLdata description/definition language)为工具给出数据库中所有实体型和联系的定义,以及给出对数据的安全性、有效性等规则要求。 三级模式中的最下层叫做内模式(internal schema)、或存储模式、物理模式等。它是对整个数据库的存储结构和特征的描述,用户通常以DBMS和OS支持的存储结构和特征为依托,以DBMS提供的内模式描述(定义)语言(DSDLdata storage description/definition language)为工具给出全局模式所对应的存储结构和特征的定义。在非关系模型中,内模式定义必须由用户给出,但在关系模型中,则往往省略此定义,而由DBMS自行确定。数据库中的数据根据内模式定义还不能直接存储,还必须交由操作系统去处理,由操作系统同外部设备打交道,控制存储空间的分配和存取数据的过程。 三级模式的最上层叫做外模式(external schema)、或子模式、应用模式、局部模式等。它是对数据库在某个方面局部应用所涉及数据的逻辑结构和特征的描述,它是终端用户和应用程序员所见到的数据库,被称为数据视图,它是整个数据库模式的一个子集,所有外模式定义的逻辑综合就得到整个模式的定义。外模式通常由用户利用所使用的计算机高级语言或开发工具定义,或利用DBMS所提供的数据库语言定义。1.4.4 DBMS的主要功能 1. 数据定义和操纵 DBMS提供数据定义语言DDL和数据操纵语言DML(data manipulation language)及其相应的编译或解释程序,使用户能够进行数据库系统的各级模式定义,并能够对数据库进行查询、插入、删除、修改等操纵数据库的操
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 可爱的青猎马说课稿-2025-2026学年小学音乐人音版五线谱北京三年级下册-人音版(五线谱)(北京)
- 2024八年级英语下册 Unit 1 Spring Is Coming(Review)说课稿(新版)冀教版
- 2.5有理数的减法说课稿2023-2024学年 北师大版七年级数学上册
- 慢性支气管炎和慢性组赛性肺疾病病人的护理说课稿-2025-2026学年中职专业课-内科护理-医学类-医药卫生大类
- 4.2 基因表达与性状的关系教学设计-2023-2024学年高一下学期生物人教版必修2
- 2025玛纳斯县司法局招聘编制外专职人民调解员人笔试备考题库及答案解析
- 高端酒店集团管理职位劳动合同汇编
- 啤酒广场与体育赛事合作租赁及赞助合同
- 地下室租赁合同范本(含提前终止条款)
- 金融机构与个人间的医疗费用贷款合同
- 第1课-远古时期的人类活动【同步练习】
- (校对)2023年国家公务员考试《行测》真题(地市卷)答案和解析
- 河北信息技术学业水平考试试题集
- 专题03 相似三角形重要模型-手拉手模型(解析版)
- 压力容器使用单位安全总监题库
- 2024-2025学年七年级语文上册第一单元测试卷(统编版2024新教材)
- 5《大学之道》《人皆有不忍人之心》理解性默写(含答案) 统编版高中语文选择性必修上册
- 先进制造技术 课件 第一章 先进制造技术概论
- GB/T 1503-2024铸钢轧辊
- FZ∕T 71006-2021 山羊绒针织绒线
- 明确目标方向自律成就梦想
评论
0/150
提交评论