当前位置: 首页 > news >正文

【SQL】E-R模型(实体-联系模型)

 

目录

 

 一、介绍    

1、实体集

定义和性质 

属性

E-R图表示

2. 联系集

定义和性质

属性

E-R图表示


 一、介绍    

        实体-联系数据模型(E-R数据模型)被开发来方便数据库的设计,它是通过允许定义代表数据库全局逻辑结构的企业模式(enterprise schema)来做到的。

        E-R模型采用了三个基本概念:实体集、联系集和属性。

        E-R模型还有一种相关联的图形表示:E-R图。


1、实体集

        一个实体(entity)是现实世界中可区别与所有其他对象中的一个“事物”或“对象”。

例如,大学中的每个人都是一个实体。实体也可以是抽象的,比如课程或者航班预定。

定义和性质 

实体集(entity set)是共享相同性质或属性、具有相同类型的实体的集合。

        例如,一所给定大学的所有教师的集合可定义为instructor实体集,而不是指某个个别实体的特定集合。

实体集的外延(extension)指 属于实体集的实体的实际集合。因此,大学中教师的实际集合构成了instructor实体集的外延。

实体集不必互不相交。比如一个person实体可以是student实体,可以是instuctor实体。

属性

        实体通过一组属性(attribute)来表示。

属性是实体集中每个成员所拥有的描述性性质。

        为实体集设计一个属性表明数据库存储关于该实体集中每个实体的类似信息,但每个实体在每个属性上可以有它自己的值。

        例如,instructor实体集可能具有的属性是ID、name,dept_name和salary.

在此,我们只考虑简单的属性---那些不能划分为子部分的属性。

每个实体在它的每个属性上都有一个(value)。

E-R图表示

        实体集在E-R图中用一个矩形表示,该矩阵分为两部分:实体集的名称,实体集所有属性的名称。

 

如图,E-R图显示的instructor和student实体集。


2. 联系集

定义和性质

         联系(relationship)是多个实体间的相互关联。

比如,教师和学生的联系。

联系集(relationship set)是相同类型联系的集合。

        联系集是在n>=2个(可能相同的)实体集上的数学关系。如果(E1,E2,....En)为实体集,那么联系集R是

                {(e1,e2,...,en)| e1∈E1, e2∈E2,...., en∈En }

的一个子集,其中(e1,e2,...,en)是一个联系实例。

$$$ 实体集之间的关联被称为参与,即实体集(E1,E2,....En)参与(participate)联系集R。

属性

        联系也可以具有被称作描述性属性(descriptive attribute)的属性。

E-R图表示

联系集在E-R图中用菱形表示,菱形通过线条连接到多个不同的实体集(矩形)。

                        显示advisor联系集的E-R图

 联系集的属性在E-R图中通过未分割的矩形来表示。我们用虚线将此矩形与表示该联系集的菱形相连接。

                        将一个属性附加到联系集的E-R图

http://www.lryc.cn/news/485372.html

相关文章:

  • C/C++静态库引用过程中出现符号未定义的处理方式
  • 『VUE』27. 透传属性与inheritAttrs(详细图文注释)
  • 借助Excel实现Word表格快速排序
  • 数据结构 ——— 层序遍历链式二叉树
  • 使用 Prompt API 与您的对象聊天
  • SpringBoot整合Mybatis-Plus实践汇总
  • 基于Spring Boot的在线性格测试系统设计与实现(源码+定制+开发)智能性格测试与用户个性分析平台、在线心理测评系统的开发、性格测试与个性数据管理系统
  • Python实现人脸识别算法并封装为类库
  • uniapp小程序分享使用canvas自定义绘制 vue3
  • SpringCloud核心组件(四)
  • 如何把本地docker 镜像下载用到centos系统中呢?
  • Godot的开发框架应当是什么样子的?
  • GitHub新手入门 - 从创建仓库到协作管理
  • 作业25 深度搜索3
  • ubuntu20.04 colmap 安装2024.11最新
  • WebRTC视频 03 - 视频采集类 VideoCaptureDS 上篇
  • python os.path.basename(获取路径中的文件名部分) 详解
  • 《FreeRTOS任务基础知识以及任务创建相关函数》
  • 036集——查询CAD图元属性字段信息:窗体显示(CAD—C#二次开发入门)
  • Swift从0开始学习 函数和闭包 day2
  • 内网、公网(外网)划分
  • 【linux】centos7 换阿里云源
  • 用OMS进行 OceanBase 租户间数据迁移的测评
  • 【因果分析方法】MATLAB计算Liang-Kleeman信息流
  • 【Java基础知识系列】之Java类的初始化顺序
  • Swift 宏(Macro)入门趣谈(二)
  • vue elementui el-dropdown-item设置@click无效的解决方案
  • 如何用re从第1排第2个位置中找到两个数字返回(0,1)
  • vue中的keep-alive是什么,有哪些使用场景,使用了什么原理,缓存后如何更新数据
  • LeetCode105.从前序与中序遍历构造二叉树