CS计算机代考程序代写 数据库理论与应用

数据库理论与应用

实验 1 任务:解决方案

提供了一个建议的 E-R 图:

• 狗的主人(实体)有名字(属性)和联系方式,例如。电话号码(属性)。

• 狗(实体)有名称(属性)、主人(与实体主人相关联)、品种名称(属性)和狗舍(属性)。在这

个建议的解决方案中,我们假设一只狗有一个唯一的主人。当然,我们可以假设一只

狗可能有不止一个主人,这只会改变基数度。

• 显示(实体)有名称、开始日期和结束日期。这场演出由它的名字和开幕日期的组合来确

定。

一只狗可以参加许多表演,在每个表演中,狗都有一个由排名评估的特定表现。另一方面,一

场表演可以有很多狗参加。因此,我们得出了一个多对多的关系:狗和表演。然而,我们需要

“存储”特定狗参加特定表演的排名信息。也就是说,我们需要引入一个新的属性“rank”,它可

以取值之一,。1:黄金、2:白银、3:青铜或 4:无,然后将此排名与参加特定表演的特定狗相关联。

在这种情况下,我们引入了一个关系实体“出席”,它用于通过两个一对多关系将实体“狗”和

“展示”关联起来。这意味着,我们将“狗”和“秀”之间的多对多关系拆分为两个一对多关系:(狗,

出席)和(出席,表演)。此外,我们将属性“等级”附加到出勤关系实体。

总之,我们确定了以下类型的关系:

• 一对多(1:M),一个主人可能有多只狗,但每只狗只有一个主人(在这个建议的解决方案

中)。

• 多对多(N:M),每只狗参加几场演出,每场演出不止一只狗参加。我们引入了关系-实体

出席,将狗和出席特定节目的人联系起来。出勤率在相应的表演中存储关于狗的表现

(等级)的信息。因此,我们将这种多对多关系分为两种一对多关系:

o 一对多(1:N),每只狗与许多(N)次出席相关联(每次出席对应于特定的表演)。也

就是一只狗参加了 N 场演出。

o 一对多(1:M),每场演出都有许多(M)观众(每个观众对应一只特定的狗)。也就是

说,有 M 只狗参加了一场表演。

数据库理论与应用

因此,E-R 模型是:

示例:让我们通过向实体添加一些实例来实例化 E-R 图。假设有三只狗:鲍勃、爱丽丝和吉姆,

两个主人:菲尔和克里斯,两个节目:节目 1和节目 2.Bob在 Show1排名第一,Show2排名第二,

Alice 仅在 Show1 排名第三,Jim 在 Show1 排名第二,Show2 排名第一.克里斯拥有鲍勃和爱丽

丝,而菲尔拥有吉姆。然后,基于我们的概念模型,我们可以用这些事实/实例“填充”我们的

实体,如下所示:

• 实体:所有者;实例:{克里斯,菲尔}

• 实体:狗;实例:{鲍勃、爱丽丝、吉姆}

• 实体:显示;实例:{显示 1,显示 2}

• 实体:出席情况;实例:{(鲍勃,表演 1,第 1),(鲍勃,表演 2,第 2),(爱丽丝,表演 1,

第 3),(吉姆,表演 1,第 2),(吉姆,表演 2,第 1)}

//注意:本例中并未包含实体的所有属性。

现在,这些实例反映了引入出席实体的必要性,其中我们将狗的实例与存储相应排名的显示的

实例相关联。

Dog Owner

Show

Name Phone Name

Close
Date

Open
Date

Name

Rank

owns
1 M

Attendance

1

N

M

1

Kennel
Name

Breed
Name