数据库系统
2023-2-27~2023-3-5
第二周小结
第三讲–关系与关系模型
1.域,一组有相同的数据类型的值的集合(列的取值范围);
2.笛卡尔积,一组域D1,D2,…,Dn的笛卡尔积为D1xD2x…xDn={(d1,d2,…,dn)|di∈Di,i=1,…,n},笛卡尔积的每个元素(d1,d2,…,dn)为n-元组,其中每一个值di为分量;
3.关系,一组域D1,D2,…,Dn的笛卡尔积的子集,即满足某一方面意义的笛卡尔积的子集;
4.属性,不同列可能来自同一个域,每一列的名字为属性名;
5.关系模式R(A1:D1,A2:D2,…,An:Dn)为关系模式,n为关系的度/目;
6.列是同质的,每一列的分量来自同一个域,是同一类型的数据;不同的列可来自不同的域,可来自同一个域(在关系模式中,Ai必须不同,而Di可以相同);
7.理论上,关系的任意两个元组不能完全相同(集合的性质),但现实中,表中可能有相同的元组;
8.关系的属性是原子的,不可再分,关系第一范式;
9.关系模式是关系的结构,关系是关系模式在某一时刻的数据;关系模式是稳定的,关系是随时间变化的;
10.候选码,又称候选键,关系中其值能够唯一标识一个元组的属性组(属性组去掉任何一个属性就不满足此性质);关系中可以有很多组候选码;
11.主码,又称主键,DBMS以主键管理关系中的各个元组,从候选码中选定;
12.包含在任何一个候选码中的属性为主属性,其他属性为非主属性(主键唯一,主属性不唯一);
13.外码,又称外键,关系R中的一个属性组,不是R的候选码,但与另一个关系S的候选码对应,为R的外键(关系是靠外键连接);
14.关系模型,由三个部分组成(描述DB各种数据的基本结构形式、描述表之间所可能发生的各种操作–关系运算、描述操作应该遵守的约束条件–完整性约束);
15.关系R和关系S存在并相容性,当且仅当R和S的属性数目必须相同、任意的i,R的第i个属性的域与S的第i个属性的域相同;
16.关系的五种基本运算:
并运算,R∪S={t|t∈Rꓦt∈S};
差运算,R-S={t|t∈Rꓥt∉S};
广义笛卡尔积,RxS={<a1,a2,…,an,b1,b2,…,bm>|<a1,a2,…,an>∈Rꓥ<b1,b2,…,bm>∈S}(检索涉及多个表时,将他们拼接起来)(RxS=SxR);
选择,
,其中条件con由逻辑运算符连接比较表达式组成;
投影,
,对原关系的列在投影后重新排列;
17.实体完整性,关系的主码中的属性值不能为空值(否则会出现不可标识的个体);
18.参照完整性,如果关系R1的外键Fk与关系R2的主键Pk相对应,则R1中的每一个元组的Fk值或为R2中某个元组的Pk值,或为空值(外键可空,主键不可空);
19.用户自定义完整性,用户针对具体的应用环境定义的完整性条件约束,如年龄在[12,35]之间,姓名在5个汉字字符内;
第四讲-关系代数
1.关系代数操作:(集合操作和纯关系操作)
2.交,R∩S={t|t∈R,t∈S};R∩S=R-(R-S)=S-(S-R);
3.Θ-连接,其中θ为关系运算符(如>,<=等);
4.实现θ-连接:对两个表进行广义笛卡尔积;从广义笛卡尔积中选取符合关系条件的元组;在对应列上进行投影操作,得到最终结果;
5.更名操作-ρA(B),表A改名为B
6.等值连接(θ-连接的特例,θ取’=’);
7.自然连接:属性名相同、值相等的元组进行连接、去掉重复的属性列(R和S要有名字相同的属性);
8.实现自然连接:对两个表进行广义笛卡尔积;从广义笛卡尔积中选取在相同列上值相同的元组;去掉重复的列;在目标列上进行投影操作,得到最终结果;
9.连接和积的差别:
10.除运算,
,
11.外连接=自然连接(或θ-连接)+失配的元组(与全空元组形成的连接)(保留横杠所在的列的值);
12.练习题
(题1已知取值均匀分布,若要自然连接最大,则以V(A,r)和V(A,s)中小的一个为基准,让关系r和s的属性A取值中min(V(A,r),V(A,s))种类都相同、A以外的属性均不同,多出来的无法拼接不管,才能得到最大;随后在根据笛卡尔积的计算方式,对应乘后面两项即可)
(题2)