gpt4 book ai didi

mysql - 强实体与弱实体 MYSQL

转载 作者:行者123 更新时间:2023-11-29 01:39:29 24 4
gpt4 key购买 nike

对于 MySQL/SQL 的作业,我需要创建 2 个不同的表来显示强实体和弱实体之间的区别

有人能给我举个例子说明我会怎么做吗?

我知道一个强大的实体可以在没有另一个实体的情况下存在,而对于一个弱实体则不然。因此,例如,一个强大的实体是否如下所示:

Employee(EmpNo, Name, EmpId)

?

但我不确定如何创建一个显示差异的表格。

最佳答案

如你所知,弱实体是没有主键的表但弱实体集的主键是由强实体集的主键构成的,弱实体集依赖于该主键, 加上弱实体集的判别器。

Relation between Strong and week entity

弱实体和强实体集之间的关系称为识别关系。在上图中提到的示例中,贷款支付是支付实体的标识关系。如图所示,弱实体集由双轮廓框表示,相应的识别关系由双轮廓菱形表示。这里的双线表示弱实体在强实体集中的全部参与,这意味着每笔付款都必须通过贷款支付与某个账户相关联。从贷款支付到贷款的箭头表示每笔付款都是针对单笔贷款的。弱实体集的鉴别器用虚线而不是实线下划线。

让我们考虑另一种情况,我们要存储员工及其家属的信息。每个员工可能有零到 n 个家属。每个受抚养人都有一个身份证号码和姓名。

现在让我们考虑以下数据库:

E#分别为1、2、3的员工有3人。

Employee having E# 1, has two dependents as 1, Rahat and 2, Chahat.

Employee having E# 2, has no dependents.

Employee having E# 3, has three dependents as 1, Raju; 2, Ruhi; 3 Raja.

现在,如果依赖实体 id 不能作为主键,因为它不是唯一的。

因此,Dependent 是一个以 id 作为鉴别器的弱实体集。它与“有”的关系具有完全参与,因为没有员工就没有依赖(公司与员工有关)。

上面的e-r图需要创建两个表。这些是将 E# 作为单列的 Employee 作为主键。另一个表将是具有 E#、id 和名称列的 Dependent,其中主键是(E# 和 id)的组合。

关于mysql - 强实体与弱实体 MYSQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29690902/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com