精华内容
下载资源
问答
  • 数据库设计】逻辑设计-ER模型转换为关系模型

    万次阅读 多人点赞 2017-09-26 16:06:05
    如何把ER模型转换为关系模型这是数据库工程设计进行到逻辑设计的一重大环节,简单的说,如果概念设计是用ER模型, 整合为全局的ER模型,那么逻辑设计这块, 主要任务就是把ER模型转换为关系模型。转换只需知道三个...

    如何把ER模型转换为关系模型

    这是数据库工程设计进行到逻辑设计的一重大环节,简单的说,如果概念设计是用ER模型, 整合为全局的ER模型,那么在逻辑设计这块, 主要任务就是把ER模型转换为关系模型。

    转换只需知道三个转换准则:

    1:1

    遇到1:1 关系的话在两个实体任选一个添加另一个实体的主键即可。

    1:N

    1:N 遇到 1:N 关系的话在N端添加另一端的主键,假如有学生和班级两个实体,一个班级可以容纳多个学生,但是一个学生只能选择一个班级, 因此班级和学生是1:N的关系,现在要转换为关系模型, 我们只需在学生的这端加上班级的唯一标识即可,这样做的原因是,因为一个学生只能有一个班级,班级是相对学生唯一的。

    N:M

    遇到N:M我们需要将联系转换为实体,然后在该实体上加上另外两个实体的主键,作为联系实体的主键,然后再加上该联系自身带的属性即可。例如有学生和老师两个实体, 一个学生可以由多名老师来授课,一名老师也可以授课多名学生,它们是M:N关系的,假如联系为授课,该联系上有成绩属性,因此当我们把它转换为关系模型时,我们把联系转换为联系实体,并添加学生实体的主键(学号)和教师实体的主键(教师编号)作为自己的主键,值得注意的是,授课实体的外键分别是学号和教师编号,但是它的主键是(学号,教师编号),另外它还拥有自己的一个属性成绩。

    1:1:N

    这是三元联系的对应关系,但是当转换为关系模型时,和1:N的情况是差不多的。我们只需将N端添加另外两端的主键即可。

    M:N:P

    这种三元联系的三种多对应关系,看上去很复杂,其实转换起来并不是那么复杂了,我们要做的仅仅是将其中的联系转换为联系实体,然后在联系实体上添加M端N端P端的主键,然后加上联系实体自身的属性,就行了。

    例子:

    说了这么多看个小例子。

    这里写图片描述

    这是一份关于商店商品仓库的ER图。

    先看仓库和商品之间是M:N的关系,于是我们首先想到的应该是把联系 库存转换为库存实体。
    库存 (仓库号,商品号,日期,库存量)
    然后是商品实体和仓库实体
    商品(商品号,商品名,单价)
    仓库(仓库号,仓库名,地址)

    除此之外仓库和商品还有一个供应关系,同样是M:N关系:
    供应 (仓库号,商品号 ,月份,月供应量)

    在上图的商店和仓库之间的关系可能写漏了,但是它们应该也是M:N的关系,一个商店可以被多个仓库供应,一个仓库也可以供应多个商店。上面已经创建了供应实体,现在只需在供应实体中假如商店号即可,也就是商店实体的主键。

    供应(仓库号,商品号,商店号 ,月份,月供应量)
    商店(商店号,商店名,地址)

    总结

    至此,转换关系模型也完成了,当然这只是个例子,实际的开发中,我们可能会遇到各式各样奇怪的需求,这就更要求我们做好概念设计的环节,对后来的数据库设计和维护都有好处。ER图的好坏,始终是数据库设计的重要一节。

    展开全文
  • 在线制作数据库ER模型

    千次阅读 2019-09-12 09:55:09
    以往的数据库设计中,我们通过会用到一些数据库的设计工具,有针对Mysql的Mysql workbench, PowerDesign等等工具,可以通过这些工具创建数据库的ER...今天搜索到一个在线制图网站,提供了对数据库ER模型进行在线设...

    在以往的数据库设计中,我们通过会用到一些数据库的设计工具,有针对Mysql的Mysql workbench, PowerDesign等等工具,可以通过这些工具创建数据库的ER模型图,但是这些都是客户端应用程序需要下载完成,比较麻烦。

    今天搜索到一个在线制图网站,提供了对数据库ER模型进行在线设计而且可以通过导入sql的方式生成ER模型,功能相当实用。制作过程下面简单做一下介绍:

    在线制图网站登录

    • 进入在线制图页面 在线制图

    • 点击下方的更多图形… 按钮 在线制图工具

    • 选择实体关系,点击应用 在线制图工具

    之后做出图标库显示实体关系的图标,拖动图标就可以进行ER模型的设计,可以拖动一下Entity到视图面板中,看到里面还有实体与实体之间的关系,一对一,一对多,多对多的关系等等 通过一番折腾之后生成

    在线制图

    在线ER模型制图工具提供了一个从数据库sql语句中导入生成ER模型的功能,这个功能好,可以将数据库的DDL脚本导入直接生成ER模型

    选择调整图形->插入->SQL… 在线制图

    在文本框中输入sql内容!

    在线制图

    最终效果如下: 在线ER模型制作

    转载于:https://my.oschina.net/u/157043/blog/3051281

    展开全文
  • 数据库设计(一):ER模型概念介绍

    千次阅读 2020-08-31 12:12:31
    这一步中,我们需要将人可以读懂的ER模型转化为机器可以读懂的逻辑模型,即我们需要书写数据库模式(SQL schema)来实现我们的模型。 物理模型设计(physical model)。物理模型关乎于数据库在储存器中如何存放,

    数据库设计步骤

    数据库的设计分为以下3个步骤:

    1. 设计概念模型(conceptual model)。在关系型数据库中,我们使用ER图来进行概念模型的设计。ER图的作用是:表示出各个实体之间的关系,方便在下一步的逻辑模型设计时书写相应的代码。
    2. 设计逻辑模型(logical model)。在这一步中,我们需要将人可以读懂的ER模型转化为机器可以读懂的逻辑模型,即我们需要书写数据库模式(SQL schema)来实现我们的模型。
    3. 物理模型设计(physical model)。物理模型关乎于数据库在储存器中如何存放,这一步的实现交由数据库管理系统(DBMS)进行。

    接下来本节主要介绍ER图的一些基本概念


    ER图基本概念

    ER代表Entity-Relationship, 意思是实体关系,我们使用ER图来绘制一个关系型数据库中的各种关系。ER图由以下3中基本的成分组成:

    • 实体(entity):方框表示,一般用全大写字母单词或大写字母开头单词进行命名
    • 属性/字段(attribute): 菱形框表示,小写字母进行命名
    • 关系(relationship):椭圆框表示,大写字母开口的单词进行命名

    其中一段关系有3个属性:

    • 度数(Degree):表示参与到一段关系中的实体数量
    • 基数(Cardinality):表示参与关系中的实体的对应关系(一对一、一对多、多对多)
    • 参与度(Participation):表示是否所有在实体集中的元素都要参与到关系当中(全体参与(total)、部分参与(partial))

    dLWGSf.png

    上图中的实体:

    • 银行分行(Branch)
    • 账户(Account)
    • 用户(Customer)

    关系:

    • 持有关系(HeldAt)。一个账户只可以被持有在一个分行(加粗黑线表示total participation的一对多关系),而一个分行可以持有多个账户(箭头表示一对一的关系)
    • 拥有(Owns)。一个用户可以拥有一个账户。
    • 所属分行(HomeBranch)。一个用户开卡的所在的分行。
    展开全文
  • 这是数据库工程设计进行到逻辑设计的一重大环节,简单的说,如果概念设计是用ER模型, 整合为全局的ER模型,那么逻辑设计这块, 主要任务就是把ER模型转换为关系模型。 转换只需知道三个转换准则: 1...

    转载: https://blog.csdn.net/HaoDaWang/article/details/78098937?locationNum=4&fps=1

    如何把ER模型转换为关系模型

    这是数据库工程设计进行到逻辑设计的一重大环节,简单的说,如果概念设计是用ER模型, 整合为全局的ER模型,那么在逻辑设计这块, 主要任务就是把ER模型转换为关系模型。

    转换只需知道三个转换准则:

    1:1

    遇到1:1 关系的话在两个实体任选一个添加另一个实体的主键即可。

    1:N

    遇到 1:N 关系的话在N端添加另一端的主键。

    假如有学生和班级两个实体,一个班级可以容纳多个学生,但是一个学生只能选择一个班级, 因此班级和学生是1:N的关系,现在要转换为关系模型, 我们只需在学生的这端加上班级的唯一标识即可,这样做的原因是,因为一个学生只能有一个班级,班级是相对学生唯一的。

    N:M

    遇到N:M,我们需要将联系转换为实体,然后在该实体上加上另外两个实体的主键,作为联系实体的主键,然后再加上该联系自身带的属性即可。

    例如有学生和老师两个实体, 一个学生可以由多名老师来授课,一名老师也可以授课多名学生,它们是M:N关系的,假如联系为授课,该联系上有成绩属性,因此当我们把它转换为关系模型时,我们把联系转换为联系实体,并添加学生实体的主键(学号)和教师实体的主键(教师编号)作为自己的主键,值得注意的是,授课实体的外键分别是学号和教师编号,但是它的主键是(学号,教师编号),另外它还拥有自己的一个属性成绩。

    1:1:N

    这是三元联系的对应关系,但是当转换为关系模型时,和1:N的情况是差不多的。我们只需将N端添加另外两端的主键即可。

    M:N:P

    这种三元联系的三种多对应关系,看上去很复杂,其实转换起来并不是那么复杂了,我们要做的仅仅是将其中的联系转换为联系实体,然后在联系实体上添加M端N端P端的主键,然后加上联系实体自身的属性,就行了。

    例子:

    说了这么多看个小例子。

    这里写图片描述

    这是一份关于商店商品仓库的ER图。

    先看仓库和商品之间是M:N的关系,于是我们首先想到的应该是把联系 库存转换为库存实体。
    库存 (仓库号,商品号,日期,库存量)
    然后是商品实体和仓库实体
    商品(商品号,商品名,单价)
    仓库(仓库号,仓库名,地址)

    除此之外仓库和商品还有一个供应关系,同样是M:N关系:
    供应 (仓库号,商品号 ,月份,月供应量)

    在上图的商店和仓库之间的关系可能写漏了,但是它们应该也是M:N的关系,一个商店可以被多个仓库供应,一个仓库也可以供应多个商店。上面已经创建了供应实体,现在只需在供应实体中加入商店号即可,也就是商店实体的主键。

    供应(仓库号,商品号,商店号 ,月份,月供应量)
    商店(商店号,商店名,地址)

    总结

    至此,转换关系模型也完成了,当然这只是个例子,实际的开发中,我们可能会遇到各式各样奇怪的需求,这就更要求我们做好概念设计的环节,对后来的数据库设计和维护都有好处。ER图的好坏,始终是数据库设计的重要一节。

    展开全文
  • 数据库实验—ER模型

    2021-05-03 10:45:02
    练习用菱形框表示,框内写出联系名称,用无向边分别与有关实体型链接起来,同时要无向边上注明联系的类型(1:1,1:n,m:n)。 下面用这节课的一个例题来进行一下阐述。 【例】用E-R图表示某个工厂物资管理的...
  • 数据库设计

    2020-11-11 19:31:28
    数据库设计 1.设计过程: 规划,需求分析,概念设计,逻辑设计,物理设计,实现和维护 规划: 避免设计不合理的数据库,导致数据库无法应对业务的扩展和数据量增长。 插入:用户画像 ...比如ER模型
  • 如何把ER模型转换为关系模型

    万次阅读 多人点赞 2017-11-26 21:26:24
    如何把ER模型转换为关系模型这是数据库工程设计进行到逻辑设计的一重大环节,简单的说,如果概念设计是用ER模型, 整合为全局的ER模型,那么逻辑设计这块, 主要任务就是把ER模型转换为关系模型。转换只需知道三个...
  • 《Go Home Trash!...在设计UML类图时,对各个实体之间的关系进行了更加细节的分析,完成了UML类图。 ER图分为实体、属性、关系三个核心部分,其中 实体(entity):即数据模型中的数据对象(即数据表),用...
  • 数据库设计流程

    2017-03-01 14:28:57
    常用的概念设计有四种方法:自底向上、自顶向下、有里向外和混合,都是用ER模型进行建模 ER模型和关系模式的转换: (1)1:1类型的关系模式转换时,只需要任何一个模式中,加上另一个模式的主键和联系类型
  • 浅谈数据库设计

    2017-06-21 10:32:10
    数据库设计 系统设计开始就应该对数据库进行良好的设计,这样才能保证以后对业务发展的需要进行改进,保证系统的稳定性。  设计步骤 需求分析:数据库需求的作用点(数据是什么,数据有哪些属性,数据属性的特点...
  • 数据库设计注意事项

    千次阅读 2006-10-30 19:50:00
    数据库设计之前在数据库设计之前首先应该有明确的数据库设计规范,包括表,视图,字段等的命名规范,设计约束和存储过程等的编码规范。同时数据库设计应该遵守从逻辑设计到物理设计的实现思路,在充分了解客户需求的...
  • 在进行数据库建立之前,我们需要对实际问题进行模型的建立,我们需要将现实世界中事物和事物的性质以及事物之间的联系抽象出来,而这一过程最常用的手段就是E-R模型设计 本章内容最重要的两件事就是掌握:ER模型的...
  • 之前。当学习编写计算机房收费系统文件。我写 机房收费系统数据库概念设计模型——ER图 这篇文章,如今到了机房收费... 这次的数据库设计其中,学习了一些数据库的命名规范,重温了经典的三范式(属性原子化。...
  • 最近,本帅在进行无聊的复试备考,而哈工程复试是要求的数据库概论,和网络安全盖伦,是的,盖伦,肉的恶心,我学了很久,经过不懈的钻研,终于摸索出来了数据库设计的基本流程,那么,下面跟着本帅一起进行数据库...
  • 机房收费系统数据库设计

    千次阅读 热门讨论 2014-06-20 22:18:48
    之前,学习编写机房收费系统的文档时,曾写过 机房收费系统数据库概念设计模型——ER图 这篇文章,... 这次的数据库设计当中,学习了一些数据库的命名规范,重温了经典的三范式(属性原子化,避免局部依赖,避免传
  • 项目数据库设计标准步骤一、数据需求分析二、确定实体关系 CDM (ER模型设计、逻辑模型设计)三、物理模型设计(PDM)四、生成数据库五、建库六、编制《数据库设计报告》 项目数据库设计标准步骤 一、数据需求分析 ...
  • 该博客是小账本前期开发阶段针对用户所进行数据库设计,通过ER图,数据字典,数据流图来对该软件的数据库开发进行设计,并且附上部分源代码进行参考。 背景 待开发的软件名称为:小账本 作业名称:第三次团队...
  • 在数据库建模的过程中,需要运用PowerDesigner进行数据库设计,这个不但让人直观的理解模型,而且可以充分的利用数据库技术,优化数据库的设计。第一次用PowerDesigner并不感到很陌生,里面与SQLServer建立数据库...
  • 使用ER Studio进行Model设计,用它的宏生成数据库创建脚本和实体类文件。示例文件:点击下载。 示例的使用: 1. 用ER Studio 6.5打开example.dm1 2. 打开菜单 Tools -> Basic Macro Editor 3. C:\盘...
  • 该博客是app前期开发阶段针对用户所进行数据库设计,通过ER图,数据字典,数据流图来对该软件的数据库开发进行设计,并且附上部分源代码进行参考。 定义 ER图:E-R图也称实体-联系图(Entity Relationship ...
  • 本篇文章将使用之前介绍过的“基本实体关系模型构件”和“高级实体关系模型构件”作为建模的基本元素。 逻辑数据库设计有多种实现方式,包括:自顶至底,自底至顶以及混合...使用ER模型进行概念数据建模方便了项目团队
  • 在数据库建模的过程中,需要运用PowerDesigner进行数据库设计,这个不但让人直观的理解模型,而且可以充分的利用数据库技术,优化数据库的设计。第一次用PowerDesigner并不感到很陌生,里面与SQLServer建立数据库...
  • (1)理解并能运用数据库设计的常见步骤来设计满足给定需求的概念模型(ER模型)和关系数据模型; (2)能结合有关的指南对模型进行优化处理。 (3) 能够某主流DBMS上创建数据库模式、所建数据库模式满足用户的...
  • 【机房重构】一步一步往上爬——数据库设计

    千次阅读 热门讨论 2015-01-30 11:15:40
    期末考试结束了,寒假全职生活如期而至,终于可以开始全身心的投入我的机房...第二章的《数据库设计ER模型》很仔细地教了我们如何进行数据库设计。所以,参考自考书的基础上,把重构时的数据库全新地设计了一番。
  • 学会数理化,走遍天下都不怕。软件研发行业,可以这样说,学会数据库,...根据某种数据库建模工具进行数据库的概念数据模型设计(CDM)和物理数据模型设计(PDM),常用的这类工具有powerdesigner,erwin,er/stu...

空空如也

空空如也

1 2 3 4 5
收藏数 92
精华内容 36
关键字:

在数据库设计er模型进行