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

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

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

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

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

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

复习 什么是数据库系统?第2章数据库系统结构2.1数据描述2.1.1概念设计中的数据描述2.1.2逻辑设计中的数据描述概念设计和逻辑设计中两套术语的对应关系信息三个世界使用的术语对照表2.1.3物理存储中的数据描述2.1.4数据联系的描述如果对于实体集A中的每一个实体,实体集B中有N个实体(N≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中至多只有一个实体与之联系,则称实体集A与实体集B有一对多联系,记为1:N。例如果对于实体集A中的每一个实体,实体集B中有N个实体(N≥0)与之联系,反之,对于实体集B中的每一个实体,实体集A中也有M个实体(M≥0)与之联系,则称实体集A与实体集B具有多对多联系,记为M:N。例两个以上的实体间的联系 若实体E1,E2,…,En之间存在联系,对于实体Ej与(j=1,2,…,i-1,i+1,…,n)中给定实体,最多只和Ei中的一个实体相联系,则说Ei与E1,E2,…,Ej-1,Ej+1,…,En联系是一对多的。 例1:对于课程、教师与参考书3个实体,如果一门课程可以有若干个教师讲授,使用若干本参考书,而每一个教师只讲授一门课程,每一本参考书只供一门课程使用,则课程与教师、参考书之间的联系是一对多的。例2:有3个实体:供应商、项目、零件,一个供应商可以供给多个项目多种零件,而每个项目可以使用多个供应商供应的零件,每种零件可由不同供应商供给,由此看出供应商、项目、零件三者之间是多对多的联系。单个实体集内的联系 同一个实体集内的各实体之间也可以存在一对一、一对多、多对多的联系。例如,职工实体集内部具有领导与被领导的联系,即某一职工(干部)“领导”若干名职工,而一个职工仅被另外一个职工直接领导,因此这是一对多的联系。2.2数据模型简单的说: 能表示实体类型及实体间联系的模型称为“数据模型”。 或者说: 在数据库技术中,数据模型是数据库系统的核心和基础。数据库的各种用户都用数据模型这个工具来抽象、表示和处理现实世界中的数据和信息。通过数据模型这种数学形式,将形形色色的、千变万化的事物抽象成计算机可以表示的形式。2.2.1数据模型的定义现实世界中客观对象的抽象过程2.2.2实体联系模型E-R图属性 用椭圆形表示,并用无向边将其与相应的实体连接起来。联系 联系本身:用菱形表示,菱形框内写明联系名,并用无向边分别与有关实体连接起来,同时在无向边旁标上联系的类型(1:1、1:n或m:n)联系的属性例:根据学校的教学情况来建立ER图。 教学情况可由学生、课程、教师、学习、任课等组成。学生对课程是多对多联系:一个学生可以学多门课程,而一门课程又有多个学生学习;教师对课程是一对多联系:一个教师可以讲授多门课程,但一门课程至多只能由一个教师任教(当一门课程分别在不同的班开课时,可看做几门课程,它们的课程名可以相同,但课程号不能相同,用以区别,这样就可以满足一对多的假设)。2.2.3层次模型表示方法 实体型:用记录类型描述。 每个结点表示一个记录类型。 属性:用字段描述。每个记录类型可包含若干个字段。 联系:用结点之间的连线表示记录(类)型之间的一对多的联系。例:教员-学生层次数据库特点: 结点的双亲是唯一的 只能直接处理一对多的实体联系 每个记录类型定义一个排序字段,也称为码字段 任何记录值只有按其路径查看时,才能显出它的全部意义 没有一个子女记录值能够脱离双亲记录值而独立存在表示多对多关系 层次数据模型只能直接表示一对多(包括一对一)的联系,多对多的联系只能通过分解才能在层次数据库中表示出来。分解的方法有两种:冗余结点法、虚拟结点法。层次数据模型的存储结构*(2)链接法:用指引元来反映数据之间的层次联系。层次数据模型的优点:(1)层次数据模型本身比较简单,易于理解。(2)对于实体间联系是固定的,而且预先定义好的应用系统,采用层次模型来实现,其性能优于关系数据库,不低于网状模型的数据库。(3)层次数据模型的约束条件也提供了良好的完整性支持。层次模型的缺点: (1)现实世界中很多联系是非层次的,如多对多联系、一个结点具有双亲等,层次数据模型表示这类联系的方法很笨拙,只能通过引入冗余结点(易产生不一致性)或创建非自然的数据组织(引入虚拟结点)来解决。 (2)对插入和删除操作的限制比较多,编辑比较复杂 (3)查询子女结点必须通过双亲结点,复杂查询支持不够 (4)由于结构严密,层次命令趋于程序化,不太灵活。2.2.4网状模型网状数据模型的数据结构 在数据库中,把满足以下两个条件的基本层次联系集合称为网状模型: (1)允许一个以上的结点无双亲; (2)一个结点可以有多于一个的双亲。表示方法(与层次数据模型相同) 实体型:用记录类型描述。 每个结点表示一个记录类型。 属性:用字段描述。 每个记录类型可包含若干个