数据库建模与设计全解析
1. 数据库设计中的完整性约束与关联确定
在数据库设计里,完整性约束的规范需依据实际情况来定。以下是几种需考虑的选项:
- 若参与为部分参与,指定实体中允许有空的外键(Null FKs)。
- 若参与为完全参与,指定实体中不允许有空的外键。
- 应限制对被引用元组的删除操作。因为删除被引用元组会破坏数据库的完整性。
- 对被引用元组的更新操作可根据情况进行限制或级联处理。一般而言,不应使用代理键进行指定;若使用了代理键,对被引用元组的更新应加以限制;若未使用代理键,对被引用元组的更新可以(且应该)进行级联操作。
通常,指定实体中的外键是非键属性,所以一般不存在键的问题。主键通常从指定实体的其他属性中选取。
确定关联是数据库设计的重要步骤,关联是多对多(M:M)关系的实现,会转化为基关系。例如,关联有 Assigned、Supports、Supplies、Uses 和 I - Contains 等。依据相关理论,为这些关联引入五个基关系,分别是 ProjWorkSchedule、SuppItemMap、ProjSuppMap、ItemProjMap 和 ItemStruct。同时,为保证数据库中属性名的唯一性,会将外键属性名改为唯一且易于追溯到其所引用属性的名称。以下是提议的关联实体:
- SuppItemMap {SI_Supp#, SI_Item#, SI_Ref#}; PK [SI_Ref#]; AK [SI_Supp#, SI_Item#]
- ItemProjMap {IP_Item#, IP_Proj#, IP_Ref#}; PK [IP_Ref#]; AK [IP_Item#, IP_
超级会员免费看
订阅专栏 解锁全文
3252

被折叠的 条评论
为什么被折叠?



