
【简答题】说明关系模型有哪三类完整性规则?
关系模型的三类完整性规则是保障数据库数据准确性和一致性的核心机制,分别从数据与现实世界的对应关系、表内数据有效性及表间关联逻辑三个维度提供约束。
实体完整性规则要求关系(表)中的主键字段必须唯一且非空。主键作为区分实体的唯一标识,若为空或重复,将无法准确识别和定位元组(记录)。例如,学生表中“学号”作为主键,不能出现两个相同学号或学号为空的记录,否则无法确定具体学生身份。
参照完整性规则(又称引用完整性)用于维护两个表之间的关联关系,确保外键取值要么为空,要么等于另一个表中主键的某个有效值。比如,选课表中的“课程号”作为外键,其取值必须对应课程表中已存在的课程号,或显式设为空(表示未选课程),防止出现“选修不存在课程”的逻辑错误。
用户定义的完整性规则是针对特定业务需求自定义的约束条件,涵盖字段数据类型、取值范围、格式验证等。例如,定义“成绩”字段取值范围为0-100,“邮箱”字段需符合邮箱格式,或“入职日期”不能晚于“当前日期”等,确保数据符合实际业务规则。
这三类规则从基础标识、关联逻辑到业务特性层层递进,共同构建了关系数据库的数据质量保障体系。当你设计数据库表结构时,是否曾因忽略某类完整性规则而遇到过数据异常?思考不同规则在实际场景中的优先级,能帮助你设计更健壮的数据库系统。