什么是一对一、一对多、多对多?什么是E-R图及如何绘制E-R图?什么是关系模式及怎样把E-R图转换成关系模式

2023-10-27

一、什么是一对一、一对多、多对多?

一对一、一对多、多对多是数据库实体间的3种关系

一对一:

  • 一个人只有一个身份证号,一个身份证号也只能标识一个人

  • 一个人只有一个面部生物信息,一个面部生物信息也只能是一个人的

一对多:

  • 张三只属于高三一班,但高三一班有30个学生

  • 南京市只能属于江苏省,但江苏省有13个市

多对多:

  • 小明可以选语文、数学、英语等课程,语文课也可以被小王、小李、小赵等学生选择

  • 联华超市可以销售乐事薯片,可以卖上好佳薯片,也可以卖其他品牌的薯片,同时乐事薯片也可以被大润发销售,也可以被家乐福等超市销售


二、什么是E-R图?如何绘制E-R图

E-R图即实体-联系图,E表示Entity,R代表Relationship,表示实体类型、属性和联系,是用来描述现实世界的概念模型,例如张三、量子力学等。

E-R图包含实体、属性和联系,其中实体表示可以相互区分的事物,可以是人可以是物,也可以是抽象的概念;属性表示实体的某个特性,例如张三的姓名、薯片的品牌等;联系表示实体之间或者实体内部之间的关联。

通常用矩形框表示实体,如果是弱实体,则在矩形外面再加个矩形,椭圆形框表示属性,菱形框表示联系,用直线将实体与联系、实体与属性、联系与属性相连,并将实体间的关系标注在连线上(1:1,1:N,M:N)。

例如:

一家公司下设多个部门,每个部门安排一个负责人,每个负责人分管各自部门的职工。


三、什么是关系模式?怎样把E-R图转换成关系模式?

关系模式是对关系的描述,它可以形式化地表示为: R(U,D,dom,F),一般简记为:R(U),例如学生(学号,姓名,性别),其中学生是关系名,学号、姓名、性别为属性。

  • R:关系名

  • U:属性名集合

  • D:属性所来自的域

  • dom:属性向域的映象集合

  • F:属性间数据的依赖关系集合

关系模式对应的就是数据库的表结构,例如:

学生(学号,姓名,性别)

课程(课程号,课程名)

选修(学号,课程号,成绩)

E-R可以转换为关系模式,例如:

1:1关系的E-R图:

医生(医生编号,所属科室)

病人(姓名,年龄,病号)

负责(医生编号,病号)

这个E-R图中的联系负责,一对一关系中联系可以合并到任意实体,例如可以将负责这一组合并到病人

医生(医生编号,所属科室)

病人(姓名,年龄,病号,医生编号)

也可以将负责这一组合并到医生

医生(医生编号,所属科室,病号)

病人(姓名,年龄,病号)

1:n关系的E-R图:

公司(统一社会信用代码,营业执照,法人)

部门(部门代码,部门名称)

设置(统一社会信用代码,部门代码)

这个E-R图中的联系设置,一对多关系中联系可以合并到多的一方实体:

公司(统一社会信用代码,营业执照,法人)

部门(部门代码,部门名称,统一社会信用代码)

m:n关系的E-R图:

学生(学号,姓名,年龄)

课程(课程编号,课程名称)

选择(学号,课程编号)

多对多关系中,联系不能合并。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

什么是一对一、一对多、多对多?什么是E-R图及如何绘制E-R图?什么是关系模式及怎样把E-R图转换成关系模式 的相关文章

  • Android SDK 安装与Manager下载tools详情

    Android SDK 安装与Manager下载tools详情 Android SDK 安装 前往android网站下载 下载图片红色处即可 下载后双击按步骤安装即可 Manager tools安装 进入安装的文件目录 找到SDK Mana
  • 区块链的5个特征

    id BSN 2021 公众号 BSN研习社 人们看重区块链 最重要的是看重区块链所具有的不可替代的功能和特点 这些特点包括去中心化 开放性 独立性 安全性 匿名性 去中心化 区块链技术不依赖额外的第三方管理机构或硬件设施 没有中心管制 除
  • Linux资源监控工具

    概述 glances 是一款用于 Linux BSD 的开源命令行系统监视工具 它使用 Python 语言开发 能够监视 CPU 负载 内存 磁盘 I O 网络流量 网速 文件系统 系统温度等信息 本文介绍 glances 的使用方法和技巧

随机推荐