3.1关系数据模型和关系数据库
集合的三个特征:确定性,互异性,无序性
传统关系运算:并,交,差,广义笛卡尔乘积
专门关系运算:选择,投影,连接,除
数据操作:查询,插入,删除,更改
三类数据完整性:实体完整性,参照完整性,用户定义完整性
3.2关系模型的基本术语与形式化定义
(1)基本术语
关系:二维表 (关系的名字就是二维表的名字)
属性(字段):二维表的每个列 列的个数称为关系的元数 (一个二维表有N个列,称其为N元关系)
值域:属性的取值范围
元组:二维表的一行数据
分量:元组中的每个属性值
关系模式:二维表的结构 R为关系名 属性分别为A1,A2,...,An 关系模式为:R(A1,A2,...,An)
候选键(候选码):唯一标识而不包含多余的属性 。能够唯一标识一个元组
主键(主码):每个关系中只能有一个主键,并且主键不能为空(主键可以由一个或多个属性共同组成)
主属性:包含在任一候选键中的属性
非主属性:不包含在任一候选键中的属性
(2)对关系的限定
每个分量必须是不可再分的最小属性
每一列的数据类型是固定的
不同列的数据可以取相同的值域
同一关系中元组不能重复
行和列的顺序不重要
3.3关系代数
(1)关系代数3大要素:运算对象,运算符,运算结果
(2)传统运算中交并差均要求两个表的关系为相同目关系,广义笛卡尔积没有该要求(列加行乘)
(3)选择(一元操作):\sigma是选择运算符 选取对象为元组(行)
(4)投影(一元操作):\prod是投影运算符 选取对象为属性(列)投影结果中重复元组去掉!!!
(5)连接(二元操作):\Theta连接(\Theta为比较运算符)等值连接 自然连接(特殊的等值连接即去掉重复的属性列)外部连接 半连接
(6)除(二元操作)