ERWin & ERStudio图里的实线和虚线的含义[转]
注: ERWin 与 ERStudio 中这一点的描述方法是一样的.
ERWin里面线代表实体间的三种关系:决定关系(Identifying Relationship),非决定关系(None-Identifying Relationship),多对多(Many-To-Many Relationship)关系.
以客户(Customer)和订单(Order)的关系为例,客户拥有唯一的识别信息CustomerID,订单拥有一个流水号。
第一种情况,假如该流水号是整个系统范围内的,那么仅仅流水号字段就可以唯一地确定订单的身份。订单中包含的CustomerID属性是客户实体的主键, 但不是订单实体的主键,相当于纯粹外键(PURE FOREIGN KEY)。客户实体和订单实体之间的关系就是非决定关系,因为CustomerID字段无法决定订单的身份。非决定关系是虚线。
第二中情况,假如该流水号不是整个系统范围内的,而是每个客户一个流水号。比如,你第一次在太平洋百货购物的话,你的流水号是1,下次就是2,依次递增。 那么,仅仅流水号字段本身就无法确定订单的身份,还需要CustomerID字段联合作主键方可。这个时候,CustomerID即是客户实体的主键,又 是Order实体的主键,相当于MIXED FOREIGN KEY.这种关系是决定关系,因为CustomerID也参与了确定订单身份的职责,尽管是部分。决定关系是实线。
ERWin & ERStudio图里的实线和虚线的含义[转]的更多相关文章
- 把UI图里的小图标制作成icon font
一个交互比较多的UI图里面可能会有很多小图标,一般可用sprites图将多个小图标弄成一张大图,或者其它的办法,各种方法的比较可参见博主的另外一篇博客使用css3新属性clip-path制作小图标,本 ...
- C#GDI+ 绘制线段(实线或虚线)、矩形、字符串、圆、椭圆
C#GDI+ 绘制线段(实线或虚线).矩形.字符串.圆.椭圆 绘制基本线条和图形 比较简单,直接看代码. Graphics graphics = e.Graphics; //绘制实线 )) { pen ...
- 【License】一张图该诉你各种License的含义?
一张图该诉你各种License的含义:
- mysql workbench EER图,里面的实线以及虚线的关系
ERWin里面线代表实体间的三种关系:决定关系(Identifying Relationship),非决定关系(None-Identifying Relationship),多对多(Many-To-M ...
- CPU 执行程序的秘密,藏在了这 15 张图里
前言 代码写了那么多,你知道 a = 1 + 2 这条代码是怎么被 CPU 执行的吗? 软件用了那么多,你知道软件的 32 位和 64 位之间的区别吗?再来 32 位的操作系统可以运行在 64 位的电 ...
- 2种不同方式实现背景图里加入文字的简单CSS样式
如果让你实现下图的样式(图片里面插入文字),你会怎么做呢? 我总结了2种方式 ①:用 img src属性直接引入图片 + 定位 ②:用背景图且不使用定位 第一种: HTML <div class ...
- Python3 tkinter基础 Canvas create_line 画实线与虚线
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- phpcms如何调用某一组图里的所有图片
{pc:get sql="select * from v9_picture_data where id = '$id'"} {loop $data $n $r} {loop str ...
- UML类图中的各种箭头代表的含义(转自:http://www.cnblogs.com/damsoft/archive/2016/10/24/5993602.html)
1.UML简介Unified Modeling Language (UML)又称统一建模语言或标准建模语言. 简单说就是以图形方式表现模型,根据不同模型进行分类,在UML 2.0中有13种图,以下是他 ...
随机推荐
- kuangbin_ShortPath E (POJ 1860)
第一次做判环 然后RE了五次 死在了奇怪的点 memset(vis, 0, sizeof dis); memset(dis, 0, sizeof vis); 什么鬼?? 什么鬼?? 其实代码本身还是不 ...
- 【转】 iOS日常学习 - iOS10上关于NSPhotoLibraryUsageDescription等问题
原文网址:http://blog.csdn.net/wang631106979/article/details/52578001 最近升级了Xcode8.0,真是很多坑啊,填完一个来另外一个,今天又遇 ...
- 【转】iOS基于WebSocket的聊天机制
原文网址:http://www.jianshu.com/p/21d9b3b94cfc WebSocket 的使得浏览器提供对 Socket 的支持成为可能,从而在浏览器和服务器之间提供了一个基于 TC ...
- lua 初接触 --- The first time use Lua for programing
The first time use Lua for programing Wang Xiao 1. 关于 lua 的变量类型: lua 变量的定义与matlab有点不同: local d , f ...
- javascript多重继承
function employee(name, job, born) { this.name = name; this.job = job; this.born = born;} function h ...
- rac 11g_生产库日志组损坏处理
原创作品,出自 "深蓝的blog" 博客,转载时请务必注明出处,否则有权追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong/ar ...
- C#加载dll 创建类对象
//加载dll 创建类对象string sqlightAssembly = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "syst ...
- InvokeRequired和Invoke
C#中禁止跨线程直接访问控件,InvokeRequired是为了解决这个问题而产生的,当一个控件的InvokeRequired属性值为真时,说明有一个创建它以外的线程想访问它.此时它将会在内部调用ne ...
- 通过命令行安装Android app
手动安装安卓app的命令为:adb install -r C:\Users\Lihao\workspace\Appium_Demo\apps\app_F_1.3.0.apk
- ubuntu 安装 boost
1.tar -zxvf boost_1_43_0.tar.gz 2.cd boost_1_43_0, 执行: sudo ./bootstrap.sh sudo ./bjam install 检验安装 ...