数据库实体、属性、关系及域的全面解析
1. 数据库基础与约束
在数据库中存储实体实例时,我们期望数据库管理系统(DBMS)确保新实例具有唯一标识符。这就是数据库约束的一个例子,即数据必须遵循的规则。执行各种数据库约束有助于我们保持数据的一致性和准确性。
2. 单值与多值属性
2.1 单值属性要求
由于最终要创建关系型数据库,数据模型中的属性必须是单值的。这意味着对于实体的给定实例,每个属性只能有一个值。例如,客户实体中每个客户只能有一个电话号码。若客户有多个电话号码且都要存入数据库,客户实体就无法处理,因为多个电话号码会使电话号码属性变为多值属性,而关系型数据库中的实体不能有这种属性。
2.2 处理多值属性的方法
以多个电话号码为例,可创建一个电话号码实体。该实体的每个实例包含电话号码所属人的客户编号和电话号码。若客户有三个电话号码,该客户就会有三个电话号码实体的实例,实体的标识符是客户编号和电话号码的组合。
2.3 多值属性的问题
多值属性会带来诸多问题:
- 数据含义问题 :比如员工实体中包含家属姓名和出生日期属性,难以确定正确的出生日期与家属姓名的对应关系,也难以保证姓名和出生日期一一对应且顺序不混乱。
- 搜索效率问题 :DBMS搜索多值属性时,需逐个搜索属性中的每个值,通常是顺序扫描,这是最慢的搜索方式。
- 数据存储限制问题 :难以确定多值属性应存储的最大数量,若指定了最大值,当需要存储更多值时会产生问题,还可能
超级会员免费看
订阅专栏 解锁全文
1467

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



