数据结构及形式化定义
由关系数据结构,关系操作集合,关系完整性约束。三部分组成
关系
只有一个种数据结构——关系,类似一张二维表
域
相同数据类型的值的集合
笛卡尔集
()()()()每一个括号叫元组,里面的值叫分量,总个数叫基数。
总个数就是一开始的域里面的个数相乘。
关系
笛卡尔集的某一个子集叫做关系
候选码某一属性组能唯一标识一个元组叫候选码,若有多个,选一个当主码,若全都是候选码,称为全码。
基本关系,查询表,视图表
基本关系的性质
- 列是同质的,都是同一类型数据,来自同一个域
- 不同的列可能来自同一个域
- 顺序无所谓
- 任意两个元组的候选吗不能取相同的值
- 行的顺序无所谓
- 分量必须取原子值
—————————————————————————————————————
关系模式
R(u,d,dom,f)
R为关系名,u为组成该关系的属性名集合,d为u中属性所来自的域,dom为属性向域的映像集合,f为属性间数据的依赖关系集合。
关系数据库的型也称为冠旭数据库模式,是对关系数据库的描述。
关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常称为关系数据库。
———————————————————————————————————————
关系操作
增删改查
查:选择,投影,并,查,笛卡尔集
操作对象和结果都是集合
—————————————————————————————————————
关系的完整性
关系完整性,参照完整性,用户定义完整性
其中
实体完整性,参照完整性被称为关系的两个不变性
实体完整性
主属性不能取空值
参照完整性
外码:
参照完整性规则
或者取空值
或者取s中的主码值
用户定义完整性
针对某一具体关系数据库的约束条件,某一具体应用所涉及的数据必须满足语意要求。
如 学生不能没有姓名,成绩在0-100之间
———————————————————————————————————
关系代数
集合运算
并,差,交,笛卡尔集
关系运算
选择,投影,连接,除运算
选择
在关系r中找出满足给定条件的诸元组
σA=a(R)={ t(A)=a |t∈R }.
投影
从r中选出若干属性列组成新的关系
πM(R)={ t(M) |t∈R }.
是对列进行运算
会取消重复的行
连接
连接运算是从两个关系的笛卡尔积中选择属性间满足一定条件的元组
等值连接
=表示
选择a,b属性值相等的那些元组
自然连接
比较的分量必须是同名的属性组,并且在结果中把重复的属性列去掉。
除运算
在关系代数中,除法运算可理解为笛卡尔积的逆运算。
设被除关系R为m元关系,除关系S为n元关系,那么它们的商为m-n元关系,记为R÷S。商的构成原则是:将被除关系R中的m-n列,按其值分成若干组,检查每一组的n列值的集合是否包含除关系S,若包含则取m-n列的值作为商的一个元组,否则不取。