2.1 关系模型

关系模型的基本概念

**关系:**二维表,通常在数据库中表现为一个表;

**属性:**关系中的一个列即为关系的一个属性;

域: 每个属性的取值范围即为该属性的域;

**元组:**关系中的一个行是一个元组,也可以称为记录;

关系模型的键

**超键:**一个或多个属性的集合,超键可以用来唯一标识一个元组

**候选键:**如果一个超键的所有真子集都不是超键,那么这个超键称为候选键

**主键:**被选中在关系中区分元组的候选键

**外键:**一个关系1的属性中可能包含另一个关系2的主键,那么这组在关系1上的属性就是参照关系2的外键

关系模型的完整性约束

完整性约束的种类:

**实体完整性:**关系中的每一个元组都被看做是一个实体,要求关系中的元组具有唯一性,即主键

**域完整性:**域完整性是针对关系的属性提出的约束要求,例如对属性的类型,格式,取值范围的约束

**参照完整性:**对外键的取值的约束要求,依赖表的中外键的取值只能是参照表主键中的值或NULL值

相关推荐
惊讶的猫1 小时前
Redis双写一致性
数据库·redis·缓存
怣502 小时前
[特殊字符] MySQL数据表操作完全指南:增删改查的艺术
数据库·mysql·adb
安然无虞2 小时前
「MongoDB数据库」初见
数据库·mysql·mongodb
一起养小猫2 小时前
Flutter for OpenHarmony 实战:番茄钟应用完整开发指南
开发语言·jvm·数据库·flutter·信息可视化·harmonyos
Mr_Xuhhh2 小时前
MySQL视图详解:虚拟表的创建、使用与实战
数据库·mysql
AI_56782 小时前
MySQL索引优化全景指南:从慢查询诊断到智能调优
数据库·mysql
老虎06272 小时前
Redis入门,配置,常见面试题总结
数据库·redis·缓存
一起养小猫3 小时前
Flutter for OpenHarmony 实战:数据持久化方案深度解析
网络·jvm·数据库·flutter·游戏·harmonyos
codeRichLife3 小时前
TimescaleDB保存100万条设备采集数据的两种存储方案对比分析
数据库
J&Lu3 小时前
[DDD大营销-Redis]
数据库·redis·缓存