关闭

从一个示例学习ER Studio8.0基本使用

标签: erstudio数据库关系设计外键
1139人阅读 评论(0) 收藏 举报
分类:

示例描述

<<数据库设计解决方案入门经典>>第五章有个例子,

customers对象包含一个或多个addresses,一个或多个contacts对象,一个或多个orders对象。

orders对象包含一个简单Date和一个Items组属性用来存放有关订购信息。一个order可以包含一个或多个Items。

基于上面的描述,可以建立这样的关系模型:

  1. 应该有5张表,分别为customers,addresses,orders,items,contacts.

  2. contacts表和orders表应该有到customers的连接,可以用customers表的一个主键(比如customersID)作为这两个表的外键。

  3. 由于存在很多一对多的关系,需要一些重复的表(外键重复)来保存信息。

  4. 基于业务需求,我们只要customers表和orders表存在主键就可以了。customers表的我们定义是customersID,orders表的主键我们定义为orderID。

书上给的模型图:

这里写图片描述

可以看出所有的关系都是一对多的关系。

使用ER Studio建模

打开软件,文件-新建,新建一个模型。

这里写图片描述

就选择默认的关系型模型。

然后在空白处右键,插入实体。

这里写图片描述

这里写图片描述

双击实体进入编辑模式,都比较好理解,注意红色标记的部分。我们为customers插入两个属性,customersID和name,其中customersID是主键。

这里写图片描述

这里写图片描述

最终效果:

这里写图片描述

按照同样的步骤,把另外四个表建好。

这里写图片描述

下面就来建立关系,需要用到工具栏上的几个关系图标,

这里写图片描述

从左到右,几个图标的意义分别为,

第一个图标:Identifying Relationship。一对多的关联,主表的主键既是子表的外键也是子表的主键。

第二个图标:Non-Identifying, Mandatory Relationship。一对多的关联,主表的主键是子表的外键,且非空。

第三个图标:Non-Identifying, Optional Relationship。一对多的关联,主表的主键是子表的外键,但可以为空。

第四个图标:One-to-One Relationship。一对一的关联,主表的主键是子表的外键,且可以为空。

我们这里用的是第二种,因为不要求主表的外键同时还是子表的主键

选择相应的链接方式后,先点击一张表,然后再点击另一张表, 两张表就自动建立起链接关系。最终效果图,

这里写图片描述

1
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

ERStudio8.0破解版

  • 2013-07-03 10:09
  • 1.81MB
  • 下载

ERStudio8.0

  • 2015-06-04 13:24
  • 983KB
  • 下载

nginx 基本入门(至今为止见过最好的 nginx 入门文章,没有之一。)

本文转自StuQ 这篇教程简单介绍了 nginx 并且讲解了一些 nginx 可以解决的简单任务。这里,我们假设 nginx 已经安装在读者的机器上。如果没有,可以看一下如何安装 nginx。这篇教...
  • Melod_bc
  • Melod_bc
  • 2016-12-19 10:18
  • 4098

PJSIP学习笔记——从simple_pjsua.c示例程序了解PJSUA-LIB的基本使用流程

要了解pjsip的使用,simple_pjsua.c是一个很好的例子,虽然代码只有短短的172行,却展示了pjsua-lib层的完整使用流程、注册流程和基本呼叫流程。 下面是学习过程中整理的simp...
  • SUKHOI27SMK
  • SUKHOI27SMK
  • 2013-08-29 15:43
  • 8930

ER图与数据库(持续更新中.....)

(一)什么是ER图?(1),概念ER图:实体关系图,简记E-R图,是指以实体、关系、属性三个基本概念概括数据的基本结构,从而描述静态数据结构的概念模式(2),要素3要素:实体、属性和关系 (3),表示...
  • acm_hmj
  • acm_hmj
  • 2016-09-28 16:57
  • 2382

C++ Builder TDrawGrid控件基本用法,使用实例,一个例子(诚诚照片Demo(DrawGrid示例)v1.02)

  • 2015-10-07 08:37
  • 511KB
  • 下载

【独立开发者er Cocos2d-x实战 003】使用Cocos Studio制作plist文件

在【独立开发者er Cocos2d-x实战 002】使用Cocos Studio创建帧动画中,我们已经知道如何创建帧动画,接下来就说说如何进行plist文件的制作/生成。步骤如下: 创建一个工程CAn...
  • chenqiai0
  • chenqiai0
  • 2015-07-09 19:11
  • 7842

mycat1.6使用案例----load data file使用示例(ER分片字表数据导入)

本文展示load data infile在mycat下的使用经验,根据错误提示完成mycat数据导入,并自动分片路由。
  • prestigeding
  • prestigeding
  • 2017-04-27 17:00
  • 1865

Android Studio在同一个窗口中打开多个Project 示例源码

  • 2017-05-12 23:20
  • 47.04MB
  • 下载

Cocos2D-X开发学习笔记-动作类之摄像机动作和基本样条动作的使用示例

  • 2013-08-10 13:04
  • 669KB
  • 下载
    个人资料
    • 访问:1609877次
    • 积分:13440
    • 等级:
    • 排名:第1128名
    • 原创:262篇
    • 转载:60篇
    • 译文:10篇
    • 评论:371条
    博客公告
    交流可在文章评论或发邮件至:pony_maggie@163.com微信号:pony_maggie
    打赏 微信支付
    微信
    打赏 比特币支付
    微信
    博客专栏
    最新评论