[说明]
某地区举行篮球比赛,需要开发一个比赛信息管理系统来记录比赛的相关信息。
[需求分析结果]
1.登记参赛球队的信息。记录球队的名称、代表地区、成立时间等信息。系统记录球队的每个队员的姓名、年龄、身高、体重等信息。每个球队有一个教练负责管理球队,一个教练仅负责一个球队。系统记录教练的姓名、年龄等信息。
2.安排球队的训练信息。比赛组织者为球队提供了若干个场地,供球队进行适应性训练。系统记录现有的场地信息,包括:场地名称、场地规模、位置等信息。系统可为每个球队安排不同的训练场地,如表3-9所示。系统记录训练场地安排的信息。
表3-9 训练安排表
|
表3-10 比赛安排表 A组:
B组
|
[概念模型设计]
根据需求阶段收集的信息,设计的实体联系图和关系模式(不完整)如下。
1.实体联系图(图3-20)
2.关系模式
教练(教练编号,姓名,年龄)
队员(队员编号,姓名,年龄,身高,体重,
球队(球队名称,代表地区,成立时间,
场地(场地名称,场地规模,位置)
训练记录(
裁判(裁判编号,姓名,年龄,级别)
比赛记录(
1. [问题1]
根据问题描述,补充4个联系,完善图3-20的实体联系图。
参考答案:[问题2]
根据补充后的E-R图,球队与球员之间的1:N联系应通过将1端实体(球员)的主码(球队名称)加入到N端实体(球员)对应的关系中来表达。这类联系也可通过独立的一个关系来表达,如球队-球员 (球队名称,队员编号),这样会对查询增加多余的连接操作,因此一般不采用这种方法。
同样,球队与教练之间的1:1联系也应通过将一方的主码增加到另一方实体对应的关系中,来表达联系。
训练和比赛为多对多联系,只能独立成一个关系模式,取该联系相关联的各实体的码及联系自有的属性构成。如比分和分组应该是比赛的属性,再加上球队、裁判、场地的码,即构成“比赛记录”的关系模式。比赛记录关系模式的主键可以是“场地名称,比赛时间”,也可以是“裁判,比赛时间”,或者是“甲队,比赛时间”,再或者是“乙队,比赛时间”。其外键是“甲队,乙队,场地名称,裁判”。
同理,训练是球队和场地的多对多联系,训练开始时间和结束时间为训练的属性,加上球队的码和场地的码,构成“训练记录”关系模式。训练记录关系模式的主键可以是“球队,开始时间”,也可以是“场地名称,开始时间”,或者是“球队,结束时间”,再或者是“场地名称,结束时间”。其外键是“球队名称,场地名称”。