chapter02 实践习题1

preview
需积分: 0 0 下载量 131 浏览量 更新于2022-08-03 收藏 488KB PDF 举报
在本章的实践习题中,我们探讨了关系模型的基础,并通过具体的例子深入理解数据库设计中的关键概念,如主键、外键约束及其对数据完整性的维护。 2.1 题目要求确定给定关系数据库中合适的主键。根据描述,答案显示在图2.1中,主键字段被下划线标出。主键是表中唯一标识一个记录的不可变属性组合,它确保了数据的唯一性。例如,在图2.1所示的关系数据库中,各个关系可能有各自的主键,如employee表中的person name可能是主键,因为员工的名字是区分他们的唯一标识。 2.2 外键约束是确保数据一致性的重要机制,防止了不合法的数据插入或删除。题目提到,instructor表中dept name属性是外键,指向department关系。当尝试在instructor表中插入一个tuple,如(10111, Ostrom, Economics, 110,000),而department表中没有Economics这个部门时,就会违反外键约束。同样,如果从department表中删除包含Biology的tuple,而至少有一个学生或教员tuple的dept name为Biology,也会违反外键约束。 2.3 关于time slot关系,考虑到一个特定的时间段可能在一周内多次出现,因此day和start time被包含在主键中。这是因为同一个课程可能会在多个不同的日子进行,甚至一天内多次上课。然而,end time不包含在主键内,因为在特定的一天和特定时间开始的课程不可能在多个时间结束。这确保了每个时间段的唯一性。 2.4 从图中所示的instructor实例来看,没有两个教员有相同的姓名。然而,这并不意味着name可以作为instructor表的超级键(或主键)。虽然在这个特定的实例中名字是唯一的,但在一般情况下,可能存在两个教员拥有相同名字的情况,除非大学有规定不允许两个教员同名,这是相当不常见的。 这些习题展示了在数据库设计中如何识别和使用主键、外键以及如何维护数据完整性。主键用于唯一标识表中的行,而外键则确保参照完整性和一致性。在实际应用中,必须考虑到所有可能的数据情况,以避免数据异常和约束冲突。理解这些概念对于构建稳定且高效的数据库系统至关重要。
深层动力
  • 粉丝: 26
  • 资源: 318
上传资源 快速赚钱
voice
center-task 前往需求广场,查看用户热搜