[IT认证]SQL2 SQL学习PPT.ppt
《[IT认证]SQL2 SQL学习PPT.ppt》由会员分享,可在线阅读,更多相关《[IT认证]SQL2 SQL学习PPT.ppt(123页珍藏版)》请在三一办公上搜索。
1、第2章 关系数据库理论基础,2.1关系的基本概念,2.1.1 关系的数学定义1域(Domain)域:是一组具有相同数据类型的值集合。例如:自然数,男,女,0,1等都可以是域。基数:域中数据的个数称为域的基数。如:0,1基数为2。,域被命名后用如下方法表示:如:D1=白亚春,陈韬,王雪莲,表示姓名的集合,基数是3;D2=计算机系,电子系,表示系的集合,基数是2;,返回,2笛卡尔积(Cartesian Product)给定一组域D1,D2,Di,Dn(可以有相同的域),则笛卡尔积定义为:D1D2DiDn=(d1,d2,di,dn)|diDi,i=1,2,n例如:D1D2=(陈韬,计算机系),(陈韬
2、,电子系),(王雪莲,计算机系),(王雪莲,电子系),(白亚春,计算机系),(白亚春,电子系),每个(d1,d2,di,dn)称为元组,di称为分量。笛卡尔积的基数:所有域的基数累乘积,即:令Di(i=1,2,,n)为有限集合,其基数为mi(i=1,2,n),则D1D2DiDn笛卡尔积的基数M为:M=m1m2m3mn。,实例:该笛卡尔积的基数是M=m1m2,即该笛卡尔积共有6个元组,它可组成一张二维表如下:,参见,=3*2=6,3关系(Relation)关系定义:笛卡尔积D1D2DiDn的子集R称作在域D1,D2,Dn上的关系,记作:R(D1,D2,Di,Dn)其中:R为关系名,n为关系的度或
3、目(Degree)Di:第i个域名(以取消有序性).当n=1 时,称该关系为单元关系;当n=2 时,称该关系为二元关系;以此类推,关系中有n个域,称该关系为n元关系。,关系做为关系数据模型的数据结构的限定与扩允:()无限关系:无意义。()每个域附加一个属性名,以取消关系元组的有序性。()一个取自笛卡尔积的子集才有意义。,参见,2.2.2 关系的性质1.列是同质的。2.关系中行的顺序、列的顺序可以任意互换,不会改变关系的意义。即行、列无序,不同质,3.关系中的任意两个元组不能相同。,4.关系中的元组分量具有原子性,即每一个分量都必须是不可分的数据项。,不具有原子性,.不同的列可出自同一个域其中的
4、每一列称为一个属性同一关系中:不同的属性要给予不同的属性名如:EMPLOYEE(SSN,NAME,BDATE,SEX,ADDRESS,SALARY,SUPERSSN,DNO)或:EMPLOYEE(雇员工号、雇员姓名、出生日期、性别、家庭住址、工资、经理工号、部门号),域相同,2.1.3 键(码,key)1候选键(Candidate key)/候选码(可以一个或多个):若关系中的某一属性组的值能惟一地标识一个元组,则称该属性组为候选键。例如:学生(学号,姓名,性别,出生年月,身份证号,家庭地址,系号),候选码,候选码,2主键(Primary key)主码(只有一个)若一个关系中有多个候选键,则选
5、定一个为主键如:选定“工号”3 主属性(Primary Attribute)候选码所包含的各属性称为主属性。如主属性:工号、身份证号4.非主属性(Non-key attribute):不包含在任何候选码中的属性。如:姓名、性别、出生年月、家庭地址、系号,注:候选码特性)唯一性(uniqueness))最小性(minimally),5全码(All-Key)关系模式中所有属性的组合是这个关系模式的候选码,6外键(Foreign key)设F是基本关系R的一个或一组属性,但不是R的主码,但F是基本关系S的主码,则称F是R的外键。R:为参照关系(referencing relation);S:为被参照
6、关系(referenced relation)(或目标关系(Target Relation))。如:学生(学号,姓名,性别,出生年月,家庭地址,系号)系(系号,系名),主健,外健,注:不仅两个或两个以上关系间可以存在引用关系,同一关系内部属性间也可。,2.1.关系模式(Relation Schema)关系模式是型,关系是值。)关系实质是一张二维表,关系是元组的集合。)关系模式的定义:关系的描述。完整的形式化表示如下:R(U,D,dom,F)简记R(U)或R(A1,A2,An)R:关系名;:属性名集合,:属性所来自的域;dom:属性向域的映象集合,F:属性间数据的依赖关系集合。属性向域的映象集合
7、:说明每个属性所对应的域。即直接说明属性的类型、长度等。如性别:男、女,2.1.关系数据库)在关系模型中,实体及实体间的联系都是用关系来表示的。)关系数据库:由实体及实体间联系的关系的集合构成。)关系数据库模式:对数据库的描述。(如包含若干域的定义及在这些域上定义的若干关系模式),2.2 关系的完整性 完整性约束:对关系的某种约束条件。)实体完整性(Entity Integrity)规则1:实体完整性规则若属性是基本关系的主码所包含的属性,则属性不能取空值。注:主码不能为空,且主码整体取值也不空。例:选修(学号,课程号,成绩)实体完整性规则:()针对基本表而言()实体可区分,且有某种唯一性标识
8、。()关系模型中以主码为唯一标识。()空值:“不知道”或“无意义”。,例:选修(学号,课程号,成绩),可以为空,不能为空,不能为空,)参照完整性(Referential Integrity):定义实体与实体之间的联系。定义:同外键的定义。例:学生(学号,姓名,性别,出生年月,系)课程(课程号,课程名,学分)选修(学号,课程号,成绩),学生:student,课程:course,选修:sc,Key,Key,Key,规则:参照完整性规则若属性(或属性组)F是基本关系R的外码,它是基本关系S的主码(R和S可以为同一关系),则对于R中每个元组在上的值必须为:()取空值(中的每个属性均为空);针对F不是主
9、码中的属性。()非空值,须为所参考主属性所包含的值。如:选课关系中,“学号”须为学生表中已存在的。实例,商品,会员,商品编号为主码,不允许为空,且不重复,允许为空值,返回,注:同一关系内部属性间也可以存在引用关系,外码与所参照的属性必须定义在同一个(或一组)域上。思考:哪个是参照关系?哪个是被参照关系?,外码与相应的主码名可以取不同的名字,)用户定义完整性(User-defined Integrity),如:grade在0-100之间 sno的编号规则 ssex只能取男或女,RDML的基础是关系运算。关系运算分为两类:、关系代数(Relation algebra)关系代数的运算可分为:(1)传
10、统的集合运算:并、差、交和笛卡尔积。(2)专门的关系运算:投影、选择、联接。、关系演算:用谓词来表达查询要求的方式。关系演算按谓词变元来分:(1)元组关系演算(2)域关系演算,2.关系代数,关系代数,一种抽象的查询语言,用关系的运算来表达查询。关系代数运算的三个要素:运算对象:关系运算结果:关系运算符:四类,()集合运算符将关系看成元组的集合运算是从关系的“水平”方向即行的角度来进行()专门的关系运算符不仅涉及行而且涉及列()算术比较符辅助专门的关系运算符进行操作()逻辑运算符辅助专门的关系运算符进行操作,关系代数运算符(待续),关系代数运算符(续),2.3.1 传统的集合运算要求参与运算的两
11、个关系必须是相容的:参与操作的两个元组必须限定为同类型的,即含有相同的属性,且对应属性的值域相同。传统的集合运算是二目运算。设:t为元组。,1并并:是将两个关系中的所有元组构成新的关系,并运算的结果中必须消除重复值。关系R与S的并运算记作:RS。条件:R和S具有相同的目n(即两个关系都有n个属性)相应的属性取自同一个域RS 仍为n目关系,由属于R或属于S的元组组成 RS=t|t Rt S,并,R,S,RS,实例A:某学生成绩管理系统使用的数据表部分数据如下:,G1,G2,G1UG2,2交交:将两个关系中的公共元组构成新的关系。关系R与S的交运算记作:RS。条件:R和S具有相同的目n相应的属性取
12、自同一个域RS仍为n目关系,由既属于R又属于S的元组组成 RS=t|t Rt S,交,R,S,R S,参见实例A:,G1,G2,G1G2,3差差:运算结果是由属于一个关系并且不属于另一个关系的元组构成的新关系,就是从一个关系中减去另一个关系。关系R与S的差运算记作:RS。条件:R和S具有相同的目n相应的属性取自同一个域R-S 仍为n目关系,由属于R而不属于S的所有元组组成 R-S=t|tRtS RS=R(R-S),差,R,S,R-S,参见实例A:,G1,G2,G2-G1,4.广义笛卡尔积(Extended Cartesian Product),Rn元关系,k1个元组Sm元关系,k2个元组RS
13、列:(n+m)列的元组的集合元组的前n列是关系R的一个元组后m列是关系S的一个元组行:k1k2个元组RS=trts|tr R tsS,广义笛卡尔积,R,S,R S,实例B:,G,SG,思考:数据合理吗?,2.3.2 专门的关系运算,专门的关系运算包括:选择、投影和连接,用于数据查询服务。1.选择(Selection)1)选择又称为限制(Restriction)2)选择运算符的含义在关系R中选择满足给定条件的诸元组 F(R)=t|tRF(t)=真F:选择条件,是一个逻辑表达式,基本形式为:(X1Y1)(X2Y2):比较运算符(,或)X1,Y1等:属性名、常量、简单函数;属性名也可以用它的序号来代
14、替;:逻辑运算符(或):表示任选项:表示上述格式可以重复下去,3)选择运算是从行的角度进行的运算 4)举例设有一个学生-课程数据库,包括学生关系Student、课程关系Course和选修关系SC。,(a),Student,例1,例2,例4,例3,例9,学 号,姓 名,性 别,年 龄,所 在 系,backs,例10,(b),Course,例9,例10,(c),SC,例7,例9,例,例10,例1 查询信息系(IS系)全体学生 Sdept=IS(Student)或 5=IS(Student)结果:,例2 查询年龄小于20岁的学生 Sage 20(Student)或 4 20(Student)结果:,
15、2.投影(Projection),投影:是从指定的关系中挑选出某些属性构成新的关系。投影的结果将取消由于取消了某些列而产生的重复元组。1)投影运算符的含义从R中选择出若干属性列组成新的关系 A(R)=tA|t R A:R中的属性列,2)投影操作主要是从列的角度进行运算但投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行),3)举例例3 查询学生的姓名和所在系即求Student关系上学生姓名和所在系两个属性上的投影 Sname,Sdept(Student)或 2,5(Student)结果:,例4 查询学生关系Student中都有哪些系 Sdept(Student)结果:,3.
16、连接(Join),连接:是将两个和多个关系连接在一起,形成一个新的关系。(按照给定条件)或者说,连接运算的结果是在两关系的笛卡尔积上的选择。1)连接也称为条件连接2)连接运算的含义从两个关系的笛卡尔积中选取属性间满足一定条件的元组 R S=|tr Rts StrAtsB A和B:分别为R和S上度数相等且可比的属性组:比较运算符,3)两类常用连接运算等值连接(equijoin)什么是等值连接为“”的连接运算称为等值连接 等值连接的含义从关系R与S的广义笛卡尔积中选取A、B属性值相等的那些元组,即等值连接为:R S=|tr Rts StrA=tsB,A=B,自然连接(Natural join)什么
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IT认证 IT认证SQL2 SQL学习PPT IT 认证 SQL2 SQL 学习 PPT

链接地址:https://www.31ppt.com/p-4593866.html