博客
关于我
概念结构设计
阅读量:381 次
发布时间:2019-03-04

本文共 1053 字,大约阅读时间需要 3 分钟。

概念模型与E-R模型

概念模型是对现实世界的抽象和简化,通过实体、属性、联系等概念进行描述。它是对数据进行概念化处理的产物,具有真实性、可理解性、可修改性和可转换性等特点。

实体(Entity)

实体是客观存在并能被区别开来的事物。它是概念模型的基本构成单元。例如,学生是实体。

属性(Attribute)

属性是实体所具有的某一特性。例如,学生的学号、姓名、性别等都是属性。

码(Key)

码是唯一标识实体的属性集。例如,学号可以作为学生实体的码。

实体型(Entity Type)

实体型是具有相同属性的实体的集合的抽象和简化。例如,学生实体型包括学号、姓名、性别等属性。

实体集(Entity Set)

同一类型的实体集合称为实体集。例如,全体学生是实体集。

联系(Relationship)

联系描述实体之间的关系。实体内部的联系指属性之间的关系,实体之间的联系指不同实体集之间的关系。

E-R模型

E-R图是描述实体、属性和联系的视觉化工具。其中:

  • 实体用矩形表示,
  • 属性用椭圆表示,
  • 联系用菱形表示。

实体之间的联系

联系可以是1:1、1:n、m:n等类型。

1:1联系

如果一个实体集A中的每个实体与实体集B中的至多一个实体联系,则称为1:1联系。

1:n联系

如果一个实体集A中的每个实体与实体集B中的n个实体联系,而实体集B中的每个实体最多与实体集A中的一个实体联系,则称为1:n联系。

m:n联系

如果实体集A中的每个实体与实体集B中的n个实体联系,而实体集B中的每个实体与实体集A中的m个实体联系,则称为m:n联系。

多对多联系

如果实体集A中的每个实体与实体集B中的多个实体联系,而实体集B中的每个实体也与实体集A中的多个实体联系,则称为多对多联系。

实体型之间的联系

实体集之间可以存在一对多、多对多等联系。

一对多联系

如果一个实体集E1中的每个实体最多与一个实体集E2中的实体联系,则称为一对多联系。

多对多联系

如果一个实体集E1中的每个实体与实体集E2中的多个实体联系,而实体集E2中的每个实体也与实体集E1中的多个实体联系,则称为多对多联系。

实体型与联系的示例

以课程、教师和参考书为例:

  • 一门课程对应一个教师(一对多联系)。
  • 一门课程对应一本参考书(一对多联系)。

实体型与联系的另一个示例

以供应商、项目和零件为例:

  • 一个项目可由多个供应商提供零件(多对多联系)。
  • 每种零件可由多个供应商供给(多对多联系)。

E-R图示例

下图展示了课程、教师和参考书之间的关系。

转载地址:http://pcne.baihongyu.com/

你可能感兴趣的文章
OpenMMLab | S4模型详解:应对长序列建模的有效方法
查看>>
OpenMMLab | 【全网首发】Llama 3 微调项目实践与教程(XTuner 版)
查看>>
OpenMMLab | 不是吧?这么好用的开源标注工具,竟然还有人不知道…
查看>>
OpenMMLab | 如何解决大模型长距离依赖问题?HiPPO 技术深度解析
查看>>
OpenMMLab | 面向多样应用需求,书生·浦语2.5开源超轻量、高性能多种参数版本
查看>>
OpenMP 线程互斥锁
查看>>
OpenMV入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
查看>>
OpenObserve云原生可观测平台本地Docker部署与远程访问实战教程
查看>>
openoffice使用总结001---版本匹配问题unknown document format for file: E:\apache-tomcat-8.5.23\webapps\ZcnsDms\
查看>>
views
查看>>
OpenPPL PPQ量化(2):离线静态量化 源码剖析
查看>>
OpenPPL PPQ量化(3):量化计算图的加载和预处理 源码剖析
查看>>
OpenPPL PPQ量化(4):计算图的切分和调度 源码剖析
查看>>
OpenPPL PPQ量化(5):执行引擎 源码剖析
查看>>
openpyxl 模块的使用
查看>>
OpenResty & Nginx:详细对比与部署指南
查看>>
openresty 前端开发入门六之调试篇
查看>>
OpenResty(nginx扩展)实现防cc攻击
查看>>
openresty完美替代nginx
查看>>
Openresty框架入门详解
查看>>