今天的法庭预订
- 表格中的每一行代表一个网球俱乐部的场地预订,该俱乐部有一个硬地球场(Court 1)和一个草地球场(Court 2)
- 预订由其法院和法院保留的期限定义
- 此外,每个预订都有与之关联的费率类型。有四种不同的费率类型:
- SAVER,适用于会员进行的 Court 1 预订
- 标准,适用于非会员进行的 Court 1 预订
- PREMIUM-A,适用于会员预订的 Court 2
- PREMIUM-B,适用于非会员进行的 Court 2 预订
该表的超级键是:
- S1 = {球场,开始时间}
- S2 = {法庭,结束时间}
- S3 = {速率类型,开始时间}
- S4 = {费率类型,结束时间}
- S5 = {球场、开始时间、结束时间}
- S6 = {费率类型、开始时间、结束时间}
- S7 = {球场、费率类型、开始时间}
- S8 = {法院、费率类型、结束时间}
- ST = {Court, Rate Type, Start Time, End Time},平凡的超级键
请注意,即使在上表中,Start Time 和 End Time 属性中的每一个都没有重复值,但我们仍然不得不承认,在其他一些日子里,球场 1 和球场 2 上的两个不同预订可能同时开始或结束同时。这就是为什么不能将 {Start Time} 和 {End Time} 视为表的超级键的原因。
S1 = {Court, Start Time} 是怎样一个超级键?
假设在第 1 天,会员从 11:00 到 12:00 预订球场 1,在第 2 天,非会员从 11:00 到 12:00 预订球场 1。
表中的记录将是 {1,11:00,12:00, SAVER} 和 {1,11:00,12:00, STANDARD}
显然 S1 = {Court, Start Time},不是超级键。还是我错了?