数据库系统原理及应用教程 第4版 刘瑞新 第2章新_第1页
数据库系统原理及应用教程 第4版 刘瑞新 第2章新_第2页
数据库系统原理及应用教程 第4版 刘瑞新 第2章新_第3页
数据库系统原理及应用教程 第4版 刘瑞新 第2章新_第4页
数据库系统原理及应用教程 第4版 刘瑞新 第2章新_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

本章教学目标、重点和难点教学目标:使学生了解三种世界中术语的定义、描述方法和关联,了解信息模型的概念,掌握信息模型的表示方法。

教学重点:信息模型的表示方法,关系模型的数据结构,关系操作和完整性约束条件,关系模型的特点。教学难点:信息模型的表示方法。关系模型和关系完整性约束条件。

1/13/20231第2章

数据模型与概念模型

2.1信息模型及表示2.2常见的数据模型1/13/202322.1信息模型及其表示2.1.1信息模型的基本概念

1.信息模型的术语

(1)对象和实例:现实世界中具有相同性质、服从相同规则的一类事物(概念)的抽象称为对象。对象中的每一个具体的事物(实体)为该对象的实例。

(2)属性:属性为实体的某一方面特征的抽象表示。

(3)主码和次码:码能够惟一标识一个实体;不能惟一标识实体的属性叫次码。

(4)域:属性的取值范围称为属性的域。信息模型是对信息世界的管理对象、属性及联系等信息的描述形式。信息模型不依赖计算机及DBMS,它是现实世界的真实全面反映。1/13/202332.实体联系的类型(1)两个实体集之间的联系

1)一对一联系(1:1):设有两个实体集A和B,对于A中的每一个实体,B中至多有一个实体与之联系;反之亦然。

2)一对多联系(1:n):设有两个实体集A和B,对于A的每一个实体,B中有一个或多个实体与之联系;而对于B的每一个实体,A中至多有一个实体与之联系。

3)多对多联系(m:n):设有两个实体集A和B,对于A的每一个实体,B中有一个或多个实体与之联系;反之亦然。1/13/20234两个实体集之间的联系工厂

负责厂长11学校

工作教师1n职工

参加体育团体mn两个实体集联系的例子1/13/20235(2)多实体集之间的联系1)多实体集之间的一对多联系。

设实体集E1,…En,对于实体集Ej(j=1,…n)中的一个给定实体,最多只和其他实体集Ei(ij)中的一个实体相联系,则称Ej与E1…,En之间的联系是一对多的。

2)多实体集之间的多对多联系。

在两个以上的多个实体集之间,当一个实体集与其他实体集之间均存在多对多联系,而其他实体集之间没有联系时,这种联系称为多实体集间的多对多联系。课程讲授教师参考书1nm供应商供应项目零件mpn1/13/202362.1.2信息模型的表示方法1)用长方形表示实体集,长方形内写明实体集名。2)用椭圆形表示实体集的属性,并用线段将其与相应的实体集连接起来。3)用菱形表示实体集间的联系,菱形内写上联系名,用线段分别与有关实体集连接起来,在线段旁标出联系的类型。如果联系具有属性,则该属性仍用椭圆框表示,仍需要用线段将属性与其联系连接起来。学生学号姓名性别年龄所在系1/13/202372.2

常见的数据模型2.2.1数据模型概述

1.数据模型的三要素

1)数据结构:所研究的对象类型的集合。包括与数据类型、内容、性质有关的对象;与数据之间联系有关的对象。

2)数据操作:对数据库中各种数据对象允许执行的操作集合。包括操作对象和有关的操作规则两部分。

3)数据约束条件:一组数据完整性规则的集合。

2.常见的数据模型

层次模型、网状模型、关系模型和面向对象数据模型。

在非关系模型中,实体集用记录表示,实体的属性对应记录的数据项(或字段)。实体集之间的联系转换成两两记录之间的联系。非关系模型中数据结构的单位是基本层次联系。RiRjLij1/13/202382.2.2层次数据模型1.层次模型的数据结构

(1)层次模型的定义

1)有且仅有一个结点没有双亲结点,这个结点称为根结点。

2)除根结点之外的其他结点有且只有一个双亲结点。

(2)层次模型的数据表示方法

实体集使用记录表示;记录型包含若干个字段;记录值表示实体;记录之间的联系使用基本层次联系表示。

(3)层次模型的特点

层次模型像一棵倒立的树,只有一个根结点,有若干个叶结点,结点的双亲是惟一的。

1/13/20239院系编号院系名称办公地点教研室编号教研室学号姓名年龄专业方向职工号姓名教学院系数据模型院系教研室学生教师D10计算机系9号楼C01硬件教研室C02软件教研室00001王平2000002李丽20电器92001王海自动化92002张铮数据库92003许明人工智能92004陈真教学院系数据库的一个实例1/13/2023102.层次模型的完整性约束条件在进行插入记录值操作时,如果没有指明相应的双亲记录值(首记录值),则不能插入子女记录值(属记录值)。(2)进行删除记录操作时,如果删除双亲记录值(首记录值),则相应的子女结点值(属记录值)也同时被删除。(3)进行修改记录操作时,应修改所有相应记录,以保证数据的一致性。

1/13/2023112.2.3网状数据模型1.网状模型的数据结构

(1)网状模型结构的基本特征

1)有一个以上的结点没有双亲。2)结点可以有多于一个的双亲。

(2)网状模型的数据表示方法

1)使用记录和记录值表示实体集和实体;每个结点表示一个记录,每个记录包含若干个字段。

2)联系(系)用结点间的有向线段表示。每个有向线段表示一个记录间的一对多的联系。

R1R2R1R2R3R4R1R3R2

L1L2L1L2L1L2L31/13/2023122.网状模型的完整性约束条件支持记录码的概念。码即惟一标识记录的数据项的集合。2)保证一个联系中双亲记录和子女记录之间是一对多的联系。3)可以支持双亲记录和子女记录之间某些约束条件。1/13/2023132.2.4关系数据模型1.关系模型的数据结构

(1)关系模型中的主要术语1)关系:一个关系对应通常所说的一张二维表。2)元组:表中的一行称为一个元组。3)属性:表中的一列称为一个属性。4)主码:表中的某个属性或属性组,值可以唯一确定一个元组,且属性组中不含多余的属性。5)域:属性的取值范围称为域。6)分量:元组中的一个属性值称为分量。7)关系模式:关系的型称为关系模式,是对关系的描述。(2)关系模型中的数据全部用关系表示关系模式一般的表示:关系名(属性1,属性2,…,属性n).1/13/202314学生学籍表

学号姓名性别年龄所在系00001王平男20计算机系00002李丽女20计算机系00010张晓刚男19数学系……………1/13/2023152.关系操作和完整性约束条件3.关系模型与非关系模型比较

1)关系数据模型建立在严格的数学基础之上。

2)关系数据模型的概念单一,容易理解。

3)关系数据模型的存取路径对用户隐蔽。

4)关系数据库中的数据联系是靠数据冗余实现的。

关系操作主要包括数据查询和插入、删除、修改数据。关系中的数据操作是集合操作。关系操作语言都是高度非过程的语言关系的完整性约束条件包括三类:实体完整性、参照完整性和用户定义的完整性。1/13/2023162.2.6对象关系数据模型1.对象关系数据模型的概念对象关系数据模型使用二维表表示数据,它包括关系表和对象表两种。关系表属于关系模型,关系的属性对应于表的列,关系的元组对应于表的行,关系模型装不支持方法。对象表属于面向对象数据模型,支持面向对象的基本功能,对象的类抽象对应二维表,类的实例(对象)对应于表中的行,类的属性对应于表的列,通过对象可调用方法。1/13/2023172.对象表的数据类型和表结构特点(1)对象表的属性支持复合数据类型关系表强调属性数据只能是不可分割的简单数据项,复合数据是不允许出现的。对象表的数据可以是基本项,也可以是组合数据项学生信息的对象表结构学号姓名年龄班级家庭联系人姓名与学生关系电话单位1/13/202318(2)对象表的属性支持可变长数组类型关系表的属性不支持数组类型,更不支持可变长的数组类型。对于一些数据个数不确定的信息,关系表只能独立新建表的方法解决。对象表增加了数组类型,用户可以使用可变长的数组类型保存记录中数据个数不一样的属性数据。学生-选课的对象表学号姓名年龄班级课程名成绩040011王刚2004(2)数据库72C语言87软件工程76040012李力2104(2)数据库67040013田红2004(3)数据库86软件工程751/13/202319(3)对象表的属性支持嵌入表数据类型

对象表中的属性,不仅可以是复合数据、数组数据等带结构的数据,还可以是嵌套表,信息结构更复杂、更丰富。嵌套表有行和列,表的长短与具体元组有关。学号姓名年龄班级

选课040011王刚2004(2)040012李力2104(2)040013田红2004(3)课程号 课程名 成绩 C20 数据库 72 C11 C语言 87 C32 软件工程 76 课程号 课程名 成绩 C20 数据库 86 C32 软件工程75 课程号 课程名 成绩 C20 数据库 67 1/13/202320习题22.1答:①实体:现实世界中存在的可以相互区分的事物或概念称为实体。②实体型:现实世界中,对具有相同性质、服从相同规则的一类事物(或概念,即实体)的抽象称为实体型。③实体集:具有相同特征或能用同样特征描述的实体的集合称为实体集。④属性:属性为实体的某一方面特征的抽象表示。⑤码:也称为关键字,能够唯一标识一个实体。⑥实体联系图(E-R图):实体联系方法(E-R图法)是用来描述现实世界中概念模型的一种著名方法,提供了表示实体集、属性和联系的方法。⑦数据模型:一组严格定义的概念集合。这些概念精确地描述了系统的数据结构、数据操作和数据完整性约束条件。1/13/2023212.2答:①数据模型是一组严格定义的概念集合,这些概念精确地描述了系统的数据结构、数据操作和数据完整性约束条件。数据模型是通过概念模型数据化处理得到的。②数据库是根据数据模型建立的,因而数据模型是数据库系统的基础。③数据模型的三要素是数据结构、数据操作和完整性约束条件。数据结构是所研究的对象类型的集合;数据操作是指对数据库中各种数据对象允许执行的操作集合;数据约束条件是一组数据完整性规则的集合。2.3答:信息模型是对信息世界的管理对象、属性及联系等信息的描述形式。信息模型不依赖于计算机及DBMS,它是现实世界的真实而全面的反映。信息模型数据化处理后可得到数据模型。1/13/2023222.4答:见图1:图1题2.4E-R图图中:部门和负责人间的联系是一对一的联系;一个学生可以借阅多本书,一本书只能一个人借,学生和借阅间的联系为一对多的联系;一个学生可以参加多个社会团体,一个社会团体有多个学生参加,学生和社会团体间的联系为多对多的联系。1/13/2023232.5答:用E-R图画出的学校的概念模型图如图2所示。1/13/2023242.6答:在数据结构中,定义满足下面两个条件的基本层次联系的集合为层次模型:有且仅有一个结点没有双亲结点,这个结点称为根结点;除根结点之外的其他结点有且只有一个双亲结点。模型实例如图3所示。1/13/2023252.7答:满足以下两个条件的基本层次联系的集合称为网状模型:有一个以上的结点没有双亲,结点可以有多于一个的双亲。模型实例如图4所示。2.8答:关系数据库是以关系模型作为数据的组织方式,关系模型是建立在严格的数学概念基础上的,关系数据库的主要优点是概念简单清晰,用户不需了解复杂的存取路径,不需说明“怎么干”,只需说明“干什么”,易懂易学。因此,关系数据模型逐渐取代了层次、网状数据模型,成为了商业数据库管理系统的主流。1/13/2023262.9答:概念模型的特点是:对现实世界的第一层抽象;与软件、硬件无关;从用户观点对数据建模。逻辑模型特点是:对现实世界的第二层抽象;与硬件无关,与软件有关;从计算机实现观点对数据建模。2.10答:①四种主要的数据模型是层次模型、网状模型、关系模型和面向对象模型。②数据结构、数据操作和完整性约束条件这三方面的内容完整地描述了一个数据模型。2.11答:①对象:现实世界中实体的模型化,它与记录、元组相似,但比它们复杂。②对象标识:每个对象有一个唯一的标识。③封装:每个对象是其状态与行为的封装。④类:共享同一属性和方法集合的所有对象组合在一起构成了一个对象类。⑤类层次:一个系统中所有类集成的一个有根的有向无环图称为类层次。1/13/2023272.12答:现实世界的任一实体都被统一地模型化为一个对象,每个对象有一个唯一的标识,称为对象标识。关系模型中的“码”也称为关键字,它能够唯一标识一个实体。2.13答:例如,职工是个实体集,技术人员、干部也是实体集,但是技术人员、干部均是职工的子集。我们把职工称为超类,技术人员、干部称为职工的子类。1/13/2023282.14答:①如果一个子类只能继承一个超类的特性(包括属性、方法和消息),这种继承称为单继承。②如果一个子类能继承多个超类的特性,这种继承称为多重继承。③继承性有两个优点:一是继承性是建模的有力工

温馨提示

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

评论

0/150

提交评论