工具:数据库设计ER图

工具:数据库设计ER图一、简介我们在做数据库设计的时候经常需要系统性的去认识系统涉及到的全部对象,以及对象间的相互关系,如果系统复杂的话,如果不借助合适工具的话,到最后设计出来的数据库肯定会存在或多或少的问题,不过前辈们早就遇到过这类问题,并提供了具体的解决方案,那就是本文要讲的ER图(EntityRelationshipDiagram),ER图提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。就…

大家好,又见面了,我是你们的朋友全栈君。

一、简介

我们在做数据设计的时候经常需要系统性的去认识系统涉及到的全部对象,以及对象间的相互关系,如果系统复杂的话,如果不借助合适工具的话,到最后设计出来的数据库肯定会存在或多或少的问题,不过前辈们早就遇到过这类问题,并提供了具体的解决方案,那就是本文要讲的ER图(Entity Relationship Diagram),ER图提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。就像数学符号一样,ER图也通过简单的约定俗成的规则来定义各自概念,主要涉及三大概念:

  1. 实体:数据模型中的数据对象,可以理解为数据表;通过“矩形框”表示实体型,矩形框内写明实体名称;
  2. 属性:实体所具有的属性,可以理解为数据表中的字段;通过“椭圆图框”表示实体的属性,并用“实心线段”与“实体型”连接起来;属性分为唯一和非唯一,唯一属性(数据表中的主键)用下划线表示。
  3. 关系:数据对象与数据对象之间的联系,可以理解为数据表与数据表之间的关系;通过”菱形框“表示实体型之间的关系,在框内写明关系,并用”实心线段“与有关实体型连接起来,同时在”实心线段“旁标上联系的类型(1:1,1:n或m:n)。
    具体的例子可以通过学生-课程表来观察,逻辑是不是很清晰,添加再多的表也能梳理好之间的关系。
    在这里插入图片描述

二、问题

  1. 如何判断实体之间的关系类型?
    关系确认需要从正反两个角度去思考,对于两个实体集A和B,观察A中的实体值在B中实体值的对应关系,反之B中实体值在A中实体值的对应关系,如果两者得出的关系一致那就可以确认是这种关系了。例如教师-课程之间的关系,1位教师可以有N门课程,但是每门课程就只有1位教师,从这个角度分析教师-课程之间是1:N的关系。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/152056.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • django自定义用户认证_编写一个自定义异常类

    django自定义用户认证_编写一个自定义异常类前言如果我们不用使用drf那套认证规则,我们想自定义认证类,那么我们首先要知道,drf本身是如何定义认证规则的,也就是要查看它的源码是如何写的源码分析源码的入口在APIView.py文件下的di

  • 字符串的匹配算法_多字符串匹配

    字符串的匹配算法_多字符串匹配目录需求基础知识逻辑解析源码实现需求先简单描述溪源曾经遇到的需求:需求一:项目结果文件中实验结论可能会存在未知类型、转换错误、空指针、超过索引长度等等。这里是类比需求,用日常开发中常出现的错误类型作为需求,如果要以上结论则判断这个项目检测失败;解决方案一:大家常用的方式可能是if(){continue;}esleif(){continue;}…或者switch-case等;方案二:可能会使用集合contain()方法;方案三:依次匹配字符串中字符(暴力匹配);以上两种方案都能解决;然

  • 推荐安卓开发神器(里面有各种UI特效和实例)

    推荐安卓开发神器(里面有各种UI特效和实例)

  • 《哈佛大学幸福课》笔记

    《哈佛大学幸福课》笔记题外话:2020.7.25-2021.4.24,视频总时长29小时,看了9个月才看完。刚看的时候又是老毛病急于求成,想一口气看完,结果到8月底看到第4课就放弃了,9月整整中断了一个月,10月才重新拾起来。拾起来也是定了个计划,慢下来,每周只看50分钟,上课做笔记记下最有感触的知识,用一年的时间看完,这样才慢慢坚持了下来。花了大概4个小时整理笔记。这门课一共分为10章,每章一个主题。B站最多播放量视频和网易云课堂上的都是33堂课的版本,给每堂课又都分别起了个名字,很混乱且让人觉得莫名其妙,凸现不了主题,这也

  • adb常用命令–安装apk[通俗易懂]

    adb常用命令–安装apk[通俗易懂]方法一:adbpush  adbpushxxxx.apk/system/app(安装到 system/app目录下,有时安装不成功)手机中的系统apk应用(*.apk)位置:/system/app安装新apk到手机 adbpushxxxx.apk/system/app。后面的/system/app就是apk的安装目录。adbpush没有adbinstall保险,

  • Android 应用程序窗口显示状态操作(requestWindowFeature()的应用)

    Android 应用程序窗口显示状态操作(requestWindowFeature()的应用)

发表回复

您的电子邮箱地址不会被公开。

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