概念模型

概念模型也称为信息模型,是一个与特定数据库管理系统无关的模型。

由于计算机不能直接处理现实世界中的具体事物,所以人们必须将具体事物转换成计算机能够处理的数据。在数据库中用数据模型来抽象、表示和处理现实世界中的数据。数据库即是模拟现实世界中某应用环境(一个企业、单位或部门)所涉及的数据的集合,它不仅要反映数据本身的内容,而且要反映数据之间的联系。这个集合或者包含了信息的一部分(用用户视图模拟),或者包含了信息的全部(用概念视图模拟),而这种模拟是通过数据模型来进行的。

为了把现实世界中的具体事物抽象、组织为某一DBMS支持的数据模型,在实际的数据处理过程中,首先将现实世界的事物及联系抽象成信息世界的信息模型,然后再抽象成计算机世界的数据模型。信息模型并不依赖于具体的计算机系统,不是某一个DBMS所支持的数据模型,它是计算机内部数据的抽象表示,是概念模型;概念模型经过抽象,转换成计算机上某一DBMS支持的数据模型。所以说,数据模型是现实世界的两级抽象的结果。在数据处理中,数据加工经历了现实世界、信息世界和计算机世界三个不同的世界,经历了两级抽象和转换。这一过程如图1.4所示。

图1.4 数据处理的抽象和转换过程

1.基本概念

在信息世界中,常用的主要概念如下:

1)实体(Entity

客观存在并且可以相互区别的“事物”称为实体。实体可以是可触及的对象,如一个学生,一本书,一个供应商、一辆汽车;也可以是抽象的概念或联系,如学生的选课、客户的订货、员工和部门之间的工作关系等。

2)属性(Attributes

实体的某一特性称为属性。如学生实体有学号、姓名、年龄、性别、系等方面的属性。属性有"型"和“值”之分,"型"即为属性名,如姓名、年龄、性别是属性的型;“值”即为属性的具体内容,如(990001,张立,20,男,计算机)这些属性值的集合表示了一个学生实体。

3)键(Key

键也成为关键字,它能唯一标识一个实体的属性或属性集。如学生的学号,但学生的姓名可能有重名,因此不能作为学生实体的键。键可以是属性或属性组。

4)域(Domain

属性值的取值范围称为该属性的域。例如,学号的域为6位整数,姓名的域为字符串集合,年龄的域为小于60大于0的整数,性别的域为(男,女)。

5)实体型(Entity Type

具有相同属性的实体构成实体型,如学生(学号,姓名,年龄,性别,系)就是一个实体型。

6)实体集(Entity Set

同型实体的集合称为实体集。如所有的学生、所有的课程等。

7)联系(Relationship

在现实世界中,事物内部以及事物之间是有联系的,这些联系同样也要抽象和反映到信息世界中来,在信息世界中将被抽象为实体型内部的联系和实体型之间的联系。实体内部的联系通常是指组成实体的各属性之间的联系;实体之间的联系通常是指不同实体集之间的联系。两个实体型之间的联系可以分为三类:

l      一对一联系(1﹕1):实体集A中的一个实体至多与实体集B中的一个实体相对应,反之亦然,则称实体集A与实体集B为一对一的联系,记作1﹕1。例如:班级与班长,观众与座位,病人与床位。

l      一对多联系(1﹕n):实体集A中的一个实体与实体集B中的多个实体相对应,反之,实体集B中的一个实体至多与实体集A中的一个实体相对应,记作1﹕n。例如:班级与学生、公司与职员、省与市。

l      多对多(m﹕n):实体集A中的一个实体与实体集B中的多个实体相对应,反之,实体集B中的一个实体与实体集A中的多个实体相对应,记作m﹕n。例如:一门课程同时又若干个学生选修,而一个学生同时选修多门课程,则课程与学生之间具有多对多联系。

实际上,一对一联系是一对多联系的特例,而一对多联系又是多对多联系的特例。可以用图形来表示两个实体型之间的这三类联系,如图 1.5所示。

(a)一对一联系

(b)一对多联系

(c)多对多联系

图1.5  实体A与实体B之间的三种联系

2.概念模型的表示方法

概念模型是对信息世界的建模,因此概念模型应该能够方便、准确地表示出上述信息世界中的常用概念。概念模型的表示方法很多,其中最为常用的方法是P.P.S.Chen于1976年提出的实体-联系方法(Entity-relationship approach)。该方法用E—R图来描述现实世界的概念模型。

E—R图提供了表示实体型、属性和联系的方法。

l     实体型:用矩形表示,矩形框内写明实体名。

l     属性:用椭圆形表示,并用无向边将其与对应的实体连接起来。

l     联系:用菱形表示,菱形框内指定联系名,并用无向边分别于有关实体连接起来,同时在无向边旁注明联系的类型(1﹕1,1﹕n或m﹕n)。

需要注意的是,联系本身也是一种实体型,也可以有属性。如果一个联系具有属性,则这种属性也要用无向边与该联系连接起来。

实例1.1  根据教务管理系统,描述简单的实体型间及实体型的联系图。使用E—R图描述两个实体型之间的联系、多个实体型之间的一对多联系和一个实体型内部的一对多联系

下例定义5个实体型,使用E—R图描述两个实体型之间的三种联系。图1.6用E—R图描述了两个实体型之间的三种联系、三个实体型之间的一对多联系和一个实体型内部的一对多联系的例子。图1.6(a)描述班级与班长之间的一对一联系,即一个班级只有一个班长,一个学生只能担任一个班级的班长;图1.6(b)描述班级与学生之间的一对多联系,即一个班级有多个学生,但一个学生只能属于一个班级;图1.6(c)描述课程与学生之间的多对多联系,即一门课程可以有多个学生选修,一个学生可以选修多门课程;图1.6(d)描述课程、教师与参考书之间的一对多联系,即一门课程可以由多个教师讲授,可以有多本参考书;图1.6(e)描述学生实体型内部的一对多联系,即一个学生领导多个学生,而一个学生仅被一个领导所管。

(a)两个实体型间的1﹕1联系

(b)两个实体型间的1﹕n联系

(c)两个实体型间的m﹕n联系

(d)三个实体型间的1﹕n联系

(e)统一实体型间的1﹕n联系

图1.6 实体型之间及实体型的联系

实例1.2  根据教务管理系统,描述包含实体属性及其联系的概念模型图。

下例根据实例1.1的5个实体型,描述各个实体的属性图和实体间联系图。这5个实体的属性描述如下:

l          学生(学号、姓名、性别、出生日期、班级)、

l          班级(班级号、班级名、所属系)、

l          课程(课程号、课程名称、类别、学分)、

l          教师(教师号、姓名、性别、出生日期、职称)、

l          参考书(书号、书名、单价、内容摘要)。

图1.7(a)是这5个实体的属性E—R图,图1.7(b)是这个概念模型各个实体间的联系图。这里,采用两张E—R图,可以更加清晰地描述概念模型。如果将图1.7(a)和(b)合并,可以得到一个完整的关于学校课程管理的概念模型(如图1.7(c)所示)。

(a)实体及其属性图

(b)实体及其联系图

(c)实体属性及其联系图

图1.7  E—R图实例

转载于:https://www.cnblogs.com/JimmyShen/archive/2011/10/09/2204895.html

数据库原理--概念模型相关推荐

  1. 南京工程学院 数据库复习(数据库系统概论复习 及 数据库原理与应用样题)

    一.数据库系统概论 1.1 百度文库 复习文档(需下载券) <数据库系统概论>(王珊.第五版) ★第一章   绪论 v 本章内容:数据库系统概述.数据模型.数据库系统结构 v 本章主要考点 ...

  2. [渝粤教育] 西南石油大学 数据库原理及应用 参考 资料

    教育 -数据库原理及应用-章节资料考试资料-西南石油大学[] SPOC-第1章 单元测验 1.[单选题]DB.DBMS和DBS三者之间的关系是( ). A.DB包括DBMS和DBS B.DBS包括DB ...

  3. 计算机数据库原理试题,计算机科学与技术专业《数据库原理》模拟试题(B)

    计算机科学与技术专业<数据库原理>模拟试题(B) 一. 填空题(每空1分,共20分) 1. 数据管理技术经历了人工处理阶段.___________和___________三个发展阶段. 2 ...

  4. 【数据库原理实验(openGauss)】实验报告

    <数据库系统原理实验>报告 文章目录 <数据库系统原理实验>报告 一.实验课程性质和教学目标 二.实验课程教学基本要求 三.实验教学内容 实验一 认识DBMS系统 (一)实验目 ...

  5. 数据库原理及应用期末复习汇总(附某高校期末真题试卷)

    文章目录 <数据库原理及应用>试题1 一.选择题 二.填空 三.简答题 四.T-SQL综合题 五.综合应用题 <数据库原理及应用>试题2 一.选择题 二.填空 三.简答题 四. ...

  6. 数据库原理-SQL Server版(期末复习)

    数据库的基本概念 1.数据(Data) 数据是用来记录信息的可识别的符号,是信息的具体表现形式. 2.数据库(DataBase,DB) 长期存储在计算机内,有组织的.可共享.具有逻辑关系和确定意义的数 ...

  7. 【数据库原理与SQL Server应用】Part13——数据库设计

    [数据库原理与SQL Server应用]Part13--数据库设计 一.关系规范化理论的引入 1.1 问题的提出 1.2 从数据依赖到函数依赖 1.2.1 数据依赖(Data Dependency) ...

  8. 数据库原理(十 一)- 概念结构设计

    数据库原理(十 一)- 概念结构设计 前言 概念结构的特点 E-R模型 概念结构设计 实体划分的原则 E-R的集成 借鉴 前言 将需求分析得到的用户需求抽象为信息结构(即概念模型)的过程就是概念结构设 ...

  9. 计算机及应用专插本,2020广东财经大学华商学院专插本计算机科学与技术专业《数据库原理与应用》考试大纲...

    2020广东财经大学华商学院专插本计算机科学与技术专业<数据库原理与应用>考试大纲是什么?即将参加2020广东专插本考试且将广东财经大学华商学院作为目标院校的小伙伴注意啦,此次易学仕小编为 ...

最新文章

  1. liferay学习(源码调试问题)
  2. 可溶于水的机器人见过吗?明胶和糖3D打印而成,现登Science子刊封面
  3. 7分钟分析人类全基因组,他们刷新全球纪录,此前最快也要24小时
  4. 点击切换div 的隐藏与显示
  5. sql跨数据库如何访问linux 下mysql_SQL跨数据库访问linux或windows的mysql和定时作业 (转)...
  6. 关于知识图谱,各路大神最近都在读哪些论文?
  7. 最近做了一个安装包的安装流程图
  8. 龙芯.NET正式发布 开源共享与开发者共成长
  9. ArcGIS 10.6字段计算器(Field Calculator)字段任意填充编码序列(奇数、偶数序列、自定义间隔)
  10. [COCI 2018#5]Parametriziran
  11. spring mvc学习(15)Referenced file contains errors
  12. 数字图像处理:图像的频域
  13. 阶乘末尾连续零的个数
  14. 【Python3 爬虫】13_爬取博客园首页所有文章
  15. JavaScript删除数组里的某个元素
  16. J2EE基础之EJB
  17. linux 开源oa系统,linux版64位免费OA办公系统4.17
  18. fortran程序设计2011年注册电气工程师基础考试大纲3
  19. 华为充电的效果_华为充电特效主题插件下载-华为炫酷充电特效插件1.0.1安卓版-精品下载...
  20. 逻辑思维题总结与例题分析

热门文章

  1. 有一个棋盘,有64个方格,在第一个方格里面放1粒芝麻重量是0.00001kg,第二个里面放2粒,第三个里面放4,棋盘上放的所有芝麻的重量。
  2. ':app:clean'. Unable to delete directory:app\build\intermediates
  3. Android 关于AIDL通信,RemoteCallbackList实现Server回调Client
  4. Android Studio Build failed(出现 gradle sync failed 问题)解决方法
  5. 星起航:抖音小店如何提升店铺复购率
  6. key_t键和ftok函数(转)
  7. T31项目架构选型方案
  8. 关于Descriptors cannot not be created directly报错
  9. 实现一个行内三个div等分_一个div,包含三个小的div,平均分布的样式
  10. 解锁iPhone密码锁?