关系数据模型的数据结构及约束定义
数据模式的三要素
- 数据的静态结构(数据本身和数据之间的联系)
- 数据的动态操作(数据的增删改查)
- 数据的完整性约束(因数据模型的不同而不同)
关系数据模型的基础概念
关系:用来描述数据以及数据之间的联系,俗称表
列:字段、属性、数据项、成员
行:元组或记录
域:列的取值范围
关系模式:对关系的描述,也就是对表的描述,有关系名和字段组成,格式为:关系名(字段1,字段2,字段3,...,字段n)
关系实例:记录或元组的集合
候选键:能够唯一识别关系实例元组的最小字段集,与E-R图中的候选键概念相同
主键:一个唯一识别关系实例元组的最小字段集合,主键也是候选键
外键:即一个表中的某个字段是另一张表中的候选键或主键,则该字段被称为此表的外键
eg:student(stuno,stuname,...,classno),class(classno,classname,....,classnum),在student中classno是学生表的外键
关系模型的完整性约束
表内完整性
- 域约束:对列数据类型的约束,比如整形,字符型等
- 主键约束:值唯一且不能为空值
- 唯一约束:值唯一有且仅有一个空值
- 规则:
- 检查约束:
表间完整性
- 外键约束:主表到从表有四种,casecade、no action、set default、set null
从表到主表也有四种,casecade、no action、set defaul、set null - 触发器(trigger):主表触发器维护从主表到主表的数据完整性,从表触发器维护从表到主表的参照完整