首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >完全参与的关系和认同的关系之间有什么区别?

完全参与的关系和认同的关系之间有什么区别?
EN

Stack Overflow用户
提问于 2017-08-07 06:13:17
回答 2查看 1.9K关注 0票数 1

我读过两种情况:一种是完全参与的关系,另一种是识别关系,即一个实体没有另一个实体存在。

我还读到过这样一篇文章:“并非所有的参与都意味着一种认同的关系”。

他们之间有什么区别?

EN

回答 2

Stack Overflow用户

发布于 2017-08-07 15:13:28

你对定义的尝试太模糊了,没有用。

当然,任何实体都必须存在才能参与一种关系,并且它所参与的一个或多个实体必须存在。不要将此与需要另一个实体类型存在的实体类型混淆。

当第一种类型的每个实体必须参与时,第一种实体类型完全参与与第二种实体之间的关系。一种类型的总参与可以是1:1、多:1或多:多。放弃关系或其整体可能会给以前完全参与的实体仍然存在的设计,可能参与其他关系。

区分关系是第一/子实体类型和第二/父实体类型之间的区别关系,其主键包括在第一/子实体的主键中。其结果是,儿童实体完全参与了识别关系。子类型的总参与度为1:1或多:1。删除总体或关系需要删除子实体类型和它所参与的任何其他关系。

如果我们不改变主键&实体之间的对应关系,那么只要一个子实体存在,它就与同一个父实体相关联。然而,一些不确定的关系可能有关联,只要一个完全参与类型的每一个实体至少参与一次。

呃建模是相当随意的。任何标识关系&它的子实体类型都可以被设置为总计多个:1非参与关系。但是,这种设计不会使子类型对父类型的存在依赖性变得显式。

票数 1
EN

Stack Overflow用户

发布于 2017-08-23 06:46:03

如果您从参与的角度来看关系,则存在参与约束,该约束指定实体类型(例如A)的存在是否取决于它是否通过关系类型与另一个实体类型(例如B)相关。

此约束指定每个实体可以参与的关系实例的最小数目,有时称为最小基数约束。有两种类型的参与constraints—total局部

著名的员工示例:“每个员工都必须为部门工作。”

  • 实体类型A:雇员
  • B类实体:部门
  • 关系: WORKS_FOR

也就是说,员工实体只有在参与至少一个WORKS_FOR关系实例时才能存在。

因此,员工在WORKS_FOR中的参与被称为完全参与(即存在依赖关系),这意味着员工实体集合中的每个实体都必须通过WORKS_FOR与部门实体相关联。

现在,在上面的例子之后,部分关系是不言自明的。

在确定关系时,我们首先需要熟悉弱实体类型:

没有自己的关键属性的实体类型称为弱实体类型。

因此,通过与来自另一实体类型的特定实体相关联来识别这些实体,并结合它们的属性值之一进行识别。

我们将此另一种实体类型称为标识(所有者)实体类型,并将将弱实体类型与其所有者关联的关系类型称为弱实体类型的标识关系

关键是:

弱实体类型对于其标识关系始终具有完全参与约束(存在依赖关系),因为没有所有者实体就无法识别弱实体。

但是,并不是每个存在依赖关系都会导致弱实体类型。与上面的示例一样,员工实体类型不能存在,除非它与部门实体类型相关,即使它有自己的键(Employee_ID),因此不是弱实体。

因此,为了确定关系,弱实体是必须的(因此有完全参与),但是,全面参与并不意味着识别关系,因为它可能没有上述例子所述的弱实体。

希望它有所帮助,如果你有任何争论,请随时发表评论。

所有参考资料均来自: 数据库系统基础(第6版) Ramez Elmasri,Shamkant B.Navathe ISBN 13: 978-0-136-08620-8

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45549043

复制
相关文章
zodmod论坛_我的世界作弊mod
modCount:记录当前集合被修改的次数 在所有的集合实现类中(Collection与Map中),都会有一个 modCount 的变量出现,它的作用就是记录当前集合被修改的次数。
全栈程序员站长
2022/09/22
4350
如何检测一个元素是否在 vector 中
可以使用头文件 <algorithm> 里的方法 std::find, #include <algorithm> #include <vector> vector<int> vec; if (std::find(vec.begin(), vec.end(), item) != vec.end()) do_this(); else do_that();
ClearSeve
2022/02/10
1.9K0
Android 检测坐标是否在国内
根据ZCChinaLocation 来实现的相关代码,其实就是这个oc代码的java版本,最近用到了这么个东西所以就给实现了一下。由于我是一个非专业Java程序员,因而代码写的比较糟糕,有什么不周到的地方还希望大家积极补充。
obaby
2023/02/23
7580
嗨,我的技术论坛上线啦!
上个周末,把自己的个人博客站点[1]上线了,大家的感兴趣的可以收藏和订阅哈,以后的学习文章都会第一时间同步到这里:https://devopsman.cn
公众号: 云原生生态圈
2022/02/16
5140
嗨,我的技术论坛上线啦!
如何告诉手机我是“我”呢?
2013年,苹果机iphone5S让指纹识别在手机上普及,它告诉各大手机厂商,指纹可以这么玩。同样苹果它也让指纹识别从手机上消失。譬如,今年苹果就推出了支持面部识别的iPhone X,而这款产品不仅带来了黑科技,也让解锁技术得到进一步的变革。当然,更值得一提的是,iPhone X的面部识别技术现在也已成为Android手机厂商所追求的潮流风向。 那老派今天就跟大家讲讲身份识别的几大类型。 1.指纹识别 指纹识别即指通过比较不同指纹的细节特征点来进行鉴别。指纹识别技术涉及图像处理、模式识别、计算机视觉、数学形
企鹅号小编
2018/01/18
1.1K0
如何告诉手机我是“我”呢?
DDD——在我梦里,我还能让你把我给欺负了?
那么在DDD中也有领域的概念,团队中的同学们也是所负责领域中的“王”。通过领域,我们会引出另外两个概念,即:子域和限界上线文。那么,在今天的文章里,我们就好好的聊一聊他们的故事。
爪哇缪斯
2023/05/10
2990
DDD——在我梦里,我还能让你把我给欺负了?
我去!GitHub 个人页还能这么玩?
如果你此前一直有留意我们公众号的推送信息,那应该有看到我们在上个月推送的一篇文章《GitHub 内测新功能,准备往程序员社交方向发力?!》。
GitHubDaily
2020/07/16
1.4K0
我是如何迁移我的博客的
本文最后更新于 2022年12月09日,已超过 52 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
仙士可
2023/02/01
6880
我是如何迁移我的博客的
我在矿上写代码
我工作的地方位于中国西北部的一座城市,陕西榆林。榆林地处交通要道,西邻甘肃、宁夏,北连内蒙古,往东渡过黄河便进入山西。
数据森麟
2019/09/27
6270
我在矿上写代码
我在GitHub上大学!
Github 地址:https://github.com/QSCTech/zju-icicles
程序员阿杜
2021/03/25
9811
我在GitHub上大学!
Github 地址:https://github.com/QSCTech/zju-icicles
程序员阿杜
2021/07/28
8210
我在GitHub上大学!
我在阿里做运营
我在阿里做运营 作者:新浪微博@盘谷的盘 如果现在给运营狗们抛出一个问题:运营、营销、策划有什么区别?相信90%的人一口答不上来,脑子飞速的转个几分钟后,才能说几句营销偏资源啦,运营偏内容啦,策划偏创
用户1756920
2018/06/21
1.3K0
Win10怎样把我的电脑放在桌面上?
1、点击[桌面] 2、点击[个性化] 3、点击[主题] 4、点击[桌面图标设置] 5、点击[计算机] 6、点击[确定]
裴来凡
2022/05/28
9280
Win10怎样把我的电脑放在桌面上?
我在腾讯造“炮弹”
我在腾讯造“炮弹” 文 | 史中 (一)真的狠人,可以写自己的“命运剧本”  我们现在回忆起来,腾讯好像是“嗖——”地一下就成了今天这么大。 但事实显然不是这样,我们的记忆最爱骗人。 在腾讯的“历史相册”里,每时每刻,身边都站着至少一个强大到随时能把自己“掐死”的对手。 比如2005年,这个对手就是微软。确切地说,是微软的 MSN。 一边是世界首富比尔·盖茨商业帝国下银盔亮甲的正规军,一边是名不见经传的深圳寻呼系统开发程序员马化腾的“中学生聊天神器”。 这一边倒的局面,连看热闹的都捂住眼镜,生怕腾讯挨打的时
腾讯大数据
2023/04/04
8280
我在腾讯造“炮弹”
我整理了 50 页 PPT 来解释 SVM
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/red_stone1/article/details/84768163
红色石头
2019/05/25
1.3K0
LeakCanary- 如何检测 Activity 是否泄漏
为了将 LeakCanary 引入到我们的项目里,我们只需要做以下两步:(温馨提示:以下代码可以左右滑动查看)
开发者技术前线
2020/11/23
1.4K0
LeakCanary- 如何检测 Activity 是否泄漏
是否适合SAP行业我是这样理解的
前面推送的文章给了刚进入SAP行业的朋友一些建议,讨论了SAP项目实施的各个阶段,还聊了一点关于SAP的行业待遇问题。
matinal
2019/10/14
1.4K0
是否适合SAP行业我是这样理解的
久违了,我我我我的童年照!
少年的肩应该担起清风明月和草长莺飞 眼里应该藏下星辰大海和万丈光芒 而当少年已成人 虽已忘却了诗篇和牧笛 但心中偶尔也会渴望那片原野 不管当年的风在不在 他们心中仍保留着少年最灿烂的样子 恰逢儿童节,我们发自心底的问: 你,还记得那个少年吗? 泛黄照片里的儿时模样 还回得去吗? 带着童心出发,每一程都是童话 值此六一儿童节 祝腾讯云AI的大小朋友们儿童节快乐! 快乐之余,识别下方二维码 腾讯云AI带你一键回到你的童年时代 「文末有体验海报可转发给家人朋友们一起Pick」 Pick一张AI小姐
腾讯云AI
2021/06/02
1.6K0
我在 MySQL 的那些年
作者:赖铮(Allen Lai),前 MySQL 官方团队成员,专注数据库内核开发近二十年,先后就职于达梦,Teradata,北大方正以及 MySQL InnoDB 存储引擎团队,是达梦数据库内核,方正 XML 数据库,以及 MySQL InnoDB 的 GIS 支持,透明加密功能的主要开发者。现任腾讯 TEG 云架构平台部数据库团队专家工程师,负责腾讯云 CDB 数据库内核的研发。 面试 2012 年的春天,阳光明媚,鸟语花香,我正在张江的一栋橙黄色的大楼里跟我的小伙伴们一起奋力
腾讯技术工程官方号
2020/11/05
6930
点击加载更多

相似问题

PHP如何按关联键值对多维数组进行分组

329

按特定键值对多维数组进行排序

212

按php中的值对多维数组进行分组

21

在PHP中按键值和和值对多维数组进行分组

40

按键值对PHP数组进行分组

36
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文