实体-联系图(ER图)_实体关系图

实体-联系图(ER图)_实体关系图我们通常用实体、联系和属性这三个概念来理解现实问题,因此ER模型比较接近人的思维方式。此外,ER模型用简单的图形符号表达系统分析员对问题域的理解,不熟悉计算机技术的用户也能理解它,因此,ER模型可以作为用户与分析员之间有效的交流工具。一、ER模型ER模型中包含3种相互关联的信息:数据对象、数据对象的属性及数据对象彼此之间相互连接的关系。1.数据对象数据对象是对软件必须理解的复合信息…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

我们通常用实体、联系和属性这三个概念来理解现实问题,因此ER模型比较接近人的思维方式。此外,ER模型用简单的图形符号表达系统分析员对问题域的理解,不熟悉计算机技术的用户也能理解它,因此,ER模型可以作为用户与分析员之间有效的交流工具。

一、ER模型

ER模型中包含3种相互关联的信息:数据对象、数据对象的属性及数据对象彼此之间相互连接的关系。

1.数据对象

数据对象是对软件必须理解的复合信息的抽象。所谓符合信息是指具有一系列不同性质或属性的事物,仅有单个值得事物(例如,宽度)不是数据对象。数据对象可以是外部实体(例如,产生或使用信息的任何事物)、事物(例如,报表)、行为(例如,打电话)、事件(例如,响警报)、角色(例如,教师、学生)、单位(例如,会计科)、地点(例如,仓库)或结构(例如文件)等。总之,可以由一组属性来定义的实体都可以被认为是数据对象。
数据对象彼此间是有关联的,例如,教师“教”课程,学生“学”课程。教或学的关系表示教师和课程或课程之间的一种特定的连接。
数据对象只封装了数据而没有对施加于数据上的操作的引用,这是数据对象与面向对象范型中的“类”或“对象”的显著区别。

2.属性

属性定义了数据对象的性质。必须把一个或多个属性定义为“标识符”,也就是说,当人们希望找到数据对象的一个实例时,用标识属性作为“关键字”(通常简称为“键”)。
应该根据对所要解决的问题的理解,来确定特定数据对象的一组合适的属性。例如,为了开发机动车管理系统,描述汽车的属性应该是生产厂、品牌、型号、发动机号码、车体类型、颜色、车主姓名、住址、驾驶证号码、生产日期及购买日期等。但是,为了开发设计汽车的CAD系统,用上述这些属性描述汽车就不合适了,其中车主姓名、住址、驾驶证号码、生产日期和购买日期等属性应该删去,而描述汽车技术指标的大量属性应该添加进来。

3.联系

客观世界中的事物彼此间往往是有联系的。例如,教师与课程渐存在“教”这种联系,而学生与课程间则存在“学”这种联系。
数据对象彼此之间相互连接的方式称为联系,也称为关系。联系可分为以下3种类型。
•一对一联系(1:1)
    例如,一个部门有一个经理,而每个经理只在一个部门任职,则部门与经理的联系是一对一的。
•一对多联系(1:N)
   例如,某校教师与课程之间存在一对多的联系“教”,即每位教师可以教多门课程,但是每门课程只能由一位教师来教。
•多对多联系(M:N)
    例如,学生与课程间的联系(“学”)是多对多的,即一个学生可以学多门课程,而每门课程可以有多个学生来学。

联系也可能有属性。例如,学生“学”某门课程所取得的成绩,既不是学生的属性也不是课程的属性。由于“成绩”既依赖于某名特定的学生又依赖于某门特定的课程,所以它是学生与课程之间的联系“学”的属性。

 

二、如何画ER图

1.要素表示

实体-联系图(ER图)_实体关系图

2.画图步骤

  • 首先确定这个模块有哪几个核心的对象以及具体有哪些特征,
  • 其次思考这些对象之间的关系,如何相互转变。
  • 最后把他们用ER图的方法表述出来。
  • 当然需要尽量精简实体以及优化属性

3.画图工具

processon在线画图、Mircosoft Office VISO2013、亿图图示等

4.示例

假设每个学生选修若干门课程,且每个学生每选一门课只有一个成绩,每个教师只担任一门课的教学,一门课由若干教师任教。“学生”有属性:学号、姓名、地址、年龄、性别。“教师”有属性:职工号、教师姓名、职称,“课程”有属性:课程号、课程名。

实体-联系图(ER图)_实体关系图

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/193525.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • arp内网攻击_外网和内网怎么设置

    arp内网攻击_外网和内网怎么设置arpspoof是一款进行arp欺骗的工具,攻击者通过毒化受害者arp缓存,将网关mac替换为攻击者mac,然后攻击者可截获受害者发送和收到的数据包,可获取受害者账户、密码等相关敏感信息。本次测试是在局域网内进行,利用kali截获centos相关数据攻击者ip:192.168.157.129受害者ip:192.168.157.2501、在kali中开启端口转发功能:echo…

    2022年10月7日
    3
  • Idea激活码最新教程2021.2版本,永久有效激活码,亲测可用,记得收藏

    Idea激活码最新教程2021.2版本,永久有效激活码,亲测可用,记得收藏Idea 激活码教程永久有效 2021 2 激活码教程 Windows 版永久激活 持续更新 Idea 激活码 2021 2 成功激活

    2025年5月22日
    6
  • Apache 配置ssl证书

    Apache 配置ssl证书1.首先确保已经安装了apacherpm-qa|grephttpd:查询版本,如果能查出版本则说明已经安装了2.安装ssl模块#yuminstallmod_ssl-yPs:安装完成后,会在/etc/httpd/conf.d/下生成一个ssl.conf配置文件。3.新建一个目录用来放ssl证书文件#mkdir/etc/httpd/ssl/上传证书到此目录下4.编辑修改ssl配置文件DocumentRoot”/var…

    2022年7月14日
    27
  • SpringBoot面试题整理,常问SpringBoot面试题汇总(2020版)

    SpringBoot面试题整理,常问SpringBoot面试题汇总(2020版)找工作的历程太艰难,面试的过程很心烦,在没着落的每一天,心情都不太美妙,这时的我们唯一能做的就是多总结,多做准备,这样,起码心里会好受些!所以我准备了一点SpringBoot的面试题,为还正在找工作的小伙伴多增加些成功的筹码!1、什么是SpringBoot?SpringBoot是Spring开源组织下的子项目,是Spring组件一站式解决方案,主要是简化了使用Spring的难度,简省了繁重的配置,提供了各种启动器,开发者能快速上手。2、SpringBoot有哪些优点?.

    2022年5月21日
    34
  • QXDM 安装[通俗易懂]

    QXDM 安装[通俗易懂]http://download.microsoft.com/download/5/6/7/567758a3-759e-473e-bf8f-52154438565a/dotnetfx.exe

    2022年10月3日
    2
  • jenkinsfile docker_python安装虚拟环境

    jenkinsfile docker_python安装虚拟环境前言之前我们用docker手动安装了jenkins环境,在jenkins中又安装了python3环境和各种安装包,如果我们想要在其他3台机器上安装,又是重复操作,重复劳动,那会显得很low,这里可以

    2022年7月28日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号