欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    第四章_关系数据库.ppt

    • 资源ID:71359939       资源大小:1.08MB        全文页数:34页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第四章_关系数据库.ppt

    4.1 4.1 关系模型及其定义关系模型及其定义4.2 4.2 关系代数关系代数第四章第四章 关系数据库关系数据库SQL Server 2000 关系模型由关系模型由关系数据结构关系数据结构、关系操作集合关系操作集合和和完整性完整性约束约束三部分组成。三部分组成。一、关系数据结构一、关系数据结构1 1、域域:一组具有相同数据类型的值的集合。:一组具有相同数据类型的值的集合。例:正数,例:正数,男,女男,女,信管系所有学生的姓名,信管系所有学生的姓名4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000一、关系数据结构一、关系数据结构2 2、笛卡尔积笛卡尔积:设给定一组域设给定一组域D D1 1,D D2 2,D Dn n,这些域可以完全不同,也可这些域可以完全不同,也可以部分或全部相同。以部分或全部相同。D D1 1,D D2 2,D Dn n的笛卡尔积为的笛卡尔积为D D1 1 D D2 2 D Dn n=(d=(d1 1,d d2 2,d dn n)|)|d di i D Dj j ,j1,2,j1,2,n,n其中每一个元素其中每一个元素(d(d1 1,d d2 2,d dn n)称为一个称为一个n n元组,简称元组。元组,简称元组。元素中的每一个值元素中的每一个值d di i称作一个分量。称作一个分量。D D1 1 D D2 2 D Dn n的的基数为:基数为:M=mM=mi i 笛卡尔积可以表示成一个二维表。表中的每一行对应一个笛卡尔积可以表示成一个二维表。表中的每一行对应一个元组每一列对应一个域。元组每一列对应一个域。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000例:例:D D1 1=姓名姓名=王平,李丽王平,李丽 D D2 2=性别性别=男,女男,女 D D3 3=年龄年龄=19=19,2020 则则D D1 1 D D2 2 D D3 3=(=(王平,男,王平,男,19),(19),(王平,男,王平,男,20),(20),(王平,女,王平,女,19)19),(王平,女,王平,女,20)20),(李丽,男,李丽,男,19)19),(李丽,男,李丽,男,20)20),(李丽,女,李丽,女,19)19),(李丽,女,李丽,女,20)20)基数基数=2=22 22=82=84.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000一、关系数据结构一、关系数据结构 3 3、关系关系 D D1 1 D D2 2 D Dn n的子集叫做域的子集叫做域D D1 1,D D2 2,D Dn n上的关系,上的关系,表示为表示为R R(D D1 1,D D2 2,D Dn n),),R R为关系名,为关系名,n n为关系的目或度为关系的目或度关系也是一个二维表。关系也是一个二维表。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000关系的性质:关系的性质:同一个属性的数据是同质的,即来自同一个域同一个属性的数据是同质的,即来自同一个域同一个关系的属性名不能重复同一个关系的属性名不能重复列位置顺序无关列位置顺序无关关系具有元组无冗余性关系具有元组无冗余性元组位置顺序无关元组位置顺序无关每个分量必须是不可分的数据项每个分量必须是不可分的数据项4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000关系的组成:关系的组成:关系关系数据数据结构结构关系模式关系模式元组元组4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000二、关系操作二、关系操作1、内容内容 关系操作包括关系操作包括数据查询数据查询、数据维护数据维护和和数据控制数据控制三大功能。三大功能。数据查询指数据检索、统计、排序、分组以及用户对信数据查询指数据检索、统计、排序、分组以及用户对信息的需求等功能。息的需求等功能。数据维护指数据增加、删除、修改等数据自身更新的功数据维护指数据增加、删除、修改等数据自身更新的功能。能。数据控制指为了保护数据的安全性和完整性而采用的数数据控制指为了保护数据的安全性和完整性而采用的数据存取控制和并发控制等功能。据存取控制和并发控制等功能。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000二、关系操作二、关系操作 2 2、特点特点 关系操作的方式为一次一关系操作的方式为一次一集合集合。3 3、关系操作语言关系操作语言 关系代数语言:用关系的运算来表达查询要求的语言。关系代数语言:用关系的运算来表达查询要求的语言。关系演算语言:用查询得到的元组替代满足的谓词条件关系演算语言:用查询得到的元组替代满足的谓词条件来表达查询要求的语言。来表达查询要求的语言。基于映射的语言:具有关系代数和关系演算双重特点的基于映射的语言:具有关系代数和关系演算双重特点的语言。语言。SQLSQL是关系数据库的标准语言是关系数据库的标准语言。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000 三、关系的完整性三、关系的完整性 1 1、实体完整性规则实体完整性规则:主属性的值不能为空值:主属性的值不能为空值 候选码候选码(码、关键字):关系中能唯一地标识一个元组的(码、关键字):关系中能唯一地标识一个元组的属性或属性组。属性或属性组。主码主码(主键、主关键字):当一个关系有多个候选码时,(主键、主关键字):当一个关系有多个候选码时,应选定其中一个候选码为主码。应选定其中一个候选码为主码。主属性主属性:候选码中的属性称为主属性。:候选码中的属性称为主属性。全码全码:若关系中只有一个侯选码,且这个侯选码中包括全:若关系中只有一个侯选码,且这个侯选码中包括全部属性,则这种侯选码称为全码。部属性,则这种侯选码称为全码。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000注:注:候选码是一个属性或一组属性,主属性则指单个的属性。候选码是一个属性或一组属性,主属性则指单个的属性。如果候选码由单个属性组成,主属性就是候选码如果候选码由单个属性组成,主属性就是候选码。如对于。如对于学生关系(学号,姓名,性别学生关系(学号,姓名,性别),学号既是候选码,也是主属,学号既是候选码,也是主属性。性。如果候选码由多个属性组成,主属性就不是候选码如果候选码由多个属性组成,主属性就不是候选码。如对。如对于学生选课关系(学号,课程号,成绩),(学号,课程号)于学生选课关系(学号,课程号,成绩),(学号,课程号)是候选码,学号是主属性,课程号也是主属性,而单个的学号是候选码,学号是主属性,课程号也是主属性,而单个的学号和课程号都不是候选码。和课程号都不是候选码。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000 2 2、参照完整性规则参照完整性规则:外码必须为空值或等于被参照表中某:外码必须为空值或等于被参照表中某个元组的主码。个元组的主码。外码外码:设:设F F是基本关系是基本关系R R的一个属性或属性组,但不是的一个属性或属性组,但不是R R的的主码,如果主码,如果F F与关系与关系S S的主码的主码S SF F相对应,则称相对应,则称F F是是R R的外码,的外码,R R为为参照表,参照表,S S为为R R的被参照表,的被参照表,4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000 例:例:学生(学号,姓名,性别,学生(学号,姓名,性别,专业号专业号专业号专业号)专业(专业号,专业名称)专业(专业号,专业名称)课程(课程号,课程名,学分)课程(课程号,课程名,学分)选课(学号,课程号,成绩)选课(学号,课程号,成绩)则学生表中的专业号为外码,专业表为学生表的被参照则学生表中的专业号为外码,专业表为学生表的被参照表,选课表中的学号、课程号为外码,学生表是选课表的被表,选课表中的学号、课程号为外码,学生表是选课表的被参照表,课程表也是选课表的被参照表参照表,课程表也是选课表的被参照表。4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 20003 3、用户定义的完整性用户定义的完整性:是针对某一具体关系数据库的约束条:是针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。件,它反映某一具体应用所涉及的数据必须满足的语义要求。例:例:考试成绩必须在考试成绩必须在0 0100100之间之间 身份证号必须是身份证号必须是1818位数字位数字4.1 4.1 关系模型及其定关系模型及其定义义SQL Server 2000 定义定义 一组建立在关系上的高级运算,每个运算都以一个或一组建立在关系上的高级运算,每个运算都以一个或多个关系作为它的运算对象,并且生成一个关系作为运算结果。多个关系作为它的运算对象,并且生成一个关系作为运算结果。(1)(1)运算对象:运算对象:关系关系 (2)(2)运算结果:运算结果:关系关系 关系运算分两类关系运算分两类 (1)(1)一般的集合运算一般的集合运算:合并、相交、求差、乘积(广义笛:合并、相交、求差、乘积(广义笛卡尔积)卡尔积)(2)(2)专门的关系运算专门的关系运算:选择、投影、连接、除:选择、投影、连接、除 4.2 4.2 关系代数关系代数SQL Server 2000 1 1、合并、合并具有相同的属性具有相同的属性的两个关系的两个关系R R1 1,R R2 2 的合并,是由属的合并,是由属于于R R1 1或属于或属于R R2 2(或属于两者)的所有元组或属于两者)的所有元组t t(不计重复元组)不计重复元组)组成的一个新的关系,组成的一个新的关系,新关系具有和新关系具有和R R1 1 或或R R2 2相同的属性名集合。相同的属性名集合。运算符:运算符:“”,记为:,记为:一、传统的集合运算一、传统的集合运算4.2 4.2 关系代数关系代数SQL Server 2000 2 2、求差(相减)、求差(相减)具有相同的属性具有相同的属性的两个关系的两个关系R R1 1,R,R2 2的求差,是由属于的求差,是由属于R R1 1而不属于而不属于R R2 2的所有元组的所有元组t t组成的一个新的关系,新关系具有组成的一个新的关系,新关系具有和和R R1 1或或R R2 2相同的属性名集合。相同的属性名集合。运算符:运算符:记为:记为:4.2 4.2 关系代数关系代数一、传统的集合运算一、传统的集合运算SQL Server 2000 3 3、相交、相交具有相同的属性具有相同的属性的两个关系的两个关系R R1 1,R,R2 2的相交,是由既的相交,是由既属于属于R R1 1又属于又属于R R2 2的所有元组的所有元组t t组成的一个新的关系,新关系具组成的一个新的关系,新关系具有和有和R R1 1或或R R2 2相同的属性名集合。相同的属性名集合。运算符:运算符:记为:记为:4.2 4.2 关系代数关系代数一、传统的集合运算一、传统的集合运算SQL Server 2000 4 4、乘积、乘积 两个关系两个关系R,SR,S(设(设R R为为n n目的目的k k1 1元关系,元关系,S S为为m m目的目的k k2 2元关元关系)的广义笛卡儿乘积,是一个(系)的广义笛卡儿乘积,是一个(n+m)n+m)目的元组集合,由属于目的元组集合,由属于R R1 1的任何一个元组的任何一个元组t tk1k1和属于和属于S S的元组的元组t tk2k2连接而成的新元组连接而成的新元组t t所组所组成的成的 一个新关系。一个新关系。运算符:运算符:“”记为:记为:4.2 4.2 关系代数关系代数一、传统的集合运算一、传统的集合运算SQL Server 2000例:例:ABCA1B1C1A2B2C2A3B3C3R1DED1E1D2E2R2R1R2A1B1C1D1E1A3B3C3D2E24.2 4.2 关系代数关系代数A1B1C1D2E2A3B3C3D1E1A2B2C2D2E2A2B2C2D1E1ABCDESQL Server 2000 二、专门的关系运算二、专门的关系运算 1 1、选择、选择指关系指关系R R中选择满足给定条件的元组中选择满足给定条件的元组 记为:记为:F F(R R)=t|t R F(t)=t|t R F(t)=真真 4.2 4.2 关系代数关系代数SQL Server 2000学号学号姓名姓名年龄年龄所在系所在系9800198001王平王平2020计算机计算机9800298002李丽李丽2121数学数学9800398003陈红陈红2020计算机计算机例例查询计算机系的所有学生查询计算机系的所有学生学生学生所在系所在系=计算机计算机(学生)(学生)学号学号姓名姓名年龄年龄所在系所在系9800198001王平王平2020计算机计算机9800398003陈红陈红2020计算机计算机4.2 4.2 关系代数关系代数SQL Server 2000二、专门的关系运算二、专门的关系运算 2 2、投影、投影指关系指关系R R中选择出若干属性列组成新的关中选择出若干属性列组成新的关系系 记为:记为:A A(R R)=tA|t R =tA|t R 其中其中A A为为R R中的属性列中的属性列4.2 4.2 关系代数关系代数SQL Server 2000例例查询学生的姓名和所在系查询学生的姓名和所在系姓名,所在系姓名,所在系(学生)(学生)姓名姓名所在系所在系王平王平计算机计算机李丽李丽数学数学陈红陈红计算机计算机4.2 4.2 关系代数关系代数学号学号姓名姓名年龄年龄所在系所在系9800198001王平王平2020计算机计算机9800298002李丽李丽2121数学数学9800398003陈红陈红2020计算机计算机学生学生SQL Server 2000注:注:投影操作是从列的角度进行运算的,但投影操作投影操作是从列的角度进行运算的,但投影操作 后,不仅取消了某些列,而且也取消了某些元组,因为后,不仅取消了某些列,而且也取消了某些元组,因为取消了某些属性后,就可能出现重复元组,关系操作自取消了某些属性后,就可能出现重复元组,关系操作自动取消重复元组。动取消重复元组。例:例:年龄,所在系年龄,所在系(学生)(学生)年龄年龄所在系所在系2020计算机计算机2121数学数学2020计算机计算机4.2 4.2 关系代数关系代数年龄年龄所在系所在系2020计算机计算机2121数学数学SQL Server 20003 3、连接、连接指从两关系指从两关系R R,S S的广义笛卡尔积中选取属性间满足一的广义笛卡尔积中选取属性间满足一定条件的元组定条件的元组,记为:记为:R S=R S=t tr r t ts s|t|tr r R R t ts s S S t tr rAA t ts sBB ABAB 其中其中A A和和B B分别为分别为R R和和S S上度数相等且可比的属性组,上度数相等且可比的属性组,为比为比较运算符。较运算符。连接运算中有两种常用的连接:一种是等值连接,另一种连接运算中有两种常用的连接:一种是等值连接,另一种是自然连接。是自然连接。等值连接等值连接是从关系是从关系R R和和S S的广义笛卡尔积中选取的广义笛卡尔积中选取A A和和B B属性相等的元组,属性相等的元组,自然连接自然连接是一种特殊的等值连接,它要求两是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉把重复的属性列去掉4.2 4.2 关系代数关系代数SQL Server 2000学号学号姓名姓名年龄年龄所在系所在系9800198001王平王平2020计算机计算机9800298002李丽李丽2121数学数学9800398003陈红陈红2020计算机计算机学生学生学号学号课程号课程号成绩成绩9800198001C1C195959800198001C3C380809800398003C1C185859800398003C2C27575选课选课学生学生 选课选课学生学生.学学号号姓名姓名年龄年龄所在系所在系选课选课.学学号号课程号课程号成绩成绩9800198001王平王平2020计算机计算机9800198001C1C195959800198001王平王平2020计算机计算机9800198001C3C380809800198001王平王平2020计算机计算机9800398003C1C185859800198001王平王平2020计算机计算机9800398003C2C275759800298002李丽李丽2121数学数学9800198001C1C195959800298002李丽李丽2121数学数学9800198001C3C380809800298002李丽李丽2121数学数学9800398003C1C195959800298002李丽李丽2121数学数学9800398003C2C275759800398003陈红陈红2020计算机计算机9800198001C1C195959800398003陈红陈红2020计算机计算机9800198001C3C380809800398003陈红陈红2020计算机计算机9800398003C1C185859800398003陈红陈红2020计算机计算机9800398003C2C27575SQL Server 2000学生学生.学学号号姓名姓名年龄年龄所在系所在系选课选课.学学号号课程号课程号成绩成绩9800198001王平王平2020计算机计算机9800198001C1C195959800198001王平王平2020计算机计算机9800198001C3C380809800398003陈红陈红2020计算机计算机9800398003C1C185859800398003陈红陈红2020计算机计算机9800398003C2C27575学生学生选课选课学生学生.学号学号=选课选课.学号学号等值等值连接连接学号学号姓名姓名年龄年龄所在系所在系9800198001王平王平2020计算机计算机9800298002李丽李丽2121数学数学9800398003陈红陈红2020计算机计算机学生学生学号学号课程号课程号成绩成绩9800198001C1C195959800198001C3C380809800398003C1C185859800398003C2C27575选课选课SQL Server 2000学生学生选课选课自然连接自然连接学号学号姓名姓名年龄年龄所在系所在系课程号课程号成绩成绩9800198001王平王平2020计算机计算机C1C195959800198001王平王平2020计算机计算机C3C380809800398003陈红陈红2020计算机计算机C1C185859800398003陈红陈红2020计算机计算机C2C27575学号学号姓名姓名年龄年龄所在系所在系9800198001王平王平2020计算机计算机9800298002李丽李丽2121数学数学9800398003陈红陈红2020计算机计算机学生学生学号学号课程号课程号成绩成绩9800198001C1C195959800198001C3C380809800398003C1C185859800398003C2C27575选课选课SQL Server 2000三、用关系代数表示检索的例子三、用关系代数表示检索的例子学生选课库的关系模式为:学生选课库的关系模式为:学生(学号,姓名,性别,年龄,所在系)学生(学号,姓名,性别,年龄,所在系)课程(课程号,课程名,先行课)课程(课程号,课程名,先行课)选课(学号,课程号,成绩)选课(学号,课程号,成绩)学号,姓名学号,姓名(课程号课程号=C2(选课(选课学生)学生)例例1、求选修了课程号为、求选修了课程号为“C2”课程的学生学号课程的学生学号学号学号(课程号课程号=C2(选课)(选课)例例2、求选修了课程号为、求选修了课程号为“C2”课程的学生学号和姓名课程的学生学号和姓名4.2 4.2 关系代数关系代数SQL Server 2000学生(学号,姓名,性别,年龄,所在系)学生(学号,姓名,性别,年龄,所在系)课程(课程号,课程名,先行课)课程(课程号,课程名,先行课)选课(学号,课程号,成绩)选课(学号,课程号,成绩)例例3、求年龄大于、求年龄大于20的所有女学生的学号、姓名的所有女学生的学号、姓名学号,姓名学号,姓名(年龄年龄20 20 性别性别=女女(学生)学生)例例4、求选了课的学生的学号和姓名、求选了课的学生的学号和姓名例例5、求没有选课的学生的学号和姓名、求没有选课的学生的学号和姓名 学号,姓名学号,姓名(选课选课 学生)学生)学号,姓名学号,姓名(学生)学生)-学号,姓名学号,姓名(选课选课 学生学生)4.2 4.2 关系代数关系代数SQL Server 2000学号学号(课程号课程号=C2C2(选课)选课)学号学号(课程号课程号=C3C3(选课)选课)或或学号学号(课程号课程号=C2C2 课程号课程号=C3C3(选课)选课)例例6、求没有选修课程号为、求没有选修课程号为“C1”课程的学生学号课程的学生学号学号学号(学生)(学生)-学号学号(课程号课程号=C1C1(选课)选课)例例7、选修、选修“C2”课程或选修课程或选修“C3”课程的学生学号课程的学生学号学生(学号,姓名,性别,年龄,所在系)学生(学号,姓名,性别,年龄,所在系)课程(课程号,课程名,先行课)课程(课程号,课程名,先行课)选课(学号,课程号,成绩)选课(学号,课程号,成绩)不能写成不能写成:学号(学号(课程号课程号C1(选课)(选课)4.2 4.2 关系代数关系代数SQL Server 2000例例8、既选修、既选修“C2”课程又选修课程又选修“C3”课程的学生学号课程的学生学号学号学号(课程号课程号=C2C2(选课)选课)学号学号(课程号课程号=C3C3(选课)选课)不能写为不能写为:学号学号(课程号课程号=C2C2 课程号课程号=C3C3(选课)选课)因为选择运算是集合运算,在同一元组中的课程号不可能因为选择运算是集合运算,在同一元组中的课程号不可能既是既是“C2C2”又是又是“C3C3”学生(学号,姓名,性别,年龄,所在系)学生(学号,姓名,性别,年龄,所在系)课程(课程号,课程名,先行课)课程(课程号,课程名,先行课)选课(学号,课程号,成绩)选课(学号,课程号,成绩)4.2 4.2 关系代数关系代数SQL Server 20001 1、习题四:、习题四:3 3,4 4,5 5,13(113(1、2 2、3 3),14(1,2,3,4),14(1,2,3,4)补充题:补充题:(1 1)求使用天津供应商生产的)求使用天津供应商生产的“红色红色”零件的工程的工程代零件的工程的工程代码码(2 2)求使用零件名为)求使用零件名为“阀门阀门”的工程的工程代码的工程的工程代码(3 3)求使用零件名为)求使用零件名为“阀门阀门”的工程的工程名的工程的工程名(4 4)求没有使用零件名为)求没有使用零件名为“阀门阀门”的工程的工程代码的工程的工程代码2 2、预习:课本第五章内容预习:课本第五章内容 课课后作后作业业SQL Server 2000

    注意事项

    本文(第四章_关系数据库.ppt)为本站会员(hyn****60)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开