版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章 关系数据库,第二章 关系数据库,2.1 关系数据模型 2.1.1 关系数据模型概述 2.1.2 关系数据模型的基本概念 2.1.3 关系数据模型的组成 2.2 关系运算简介 2.2.1 选择运算 2.2.2 投影运算 2.2.3 连接运算,2.1.1 关系数据模型概述,关系模型是集合论的产物;关系模型是以关系代数为理论基础的;关系模型的理论的奠基人是IBM公司的E. F. Codd。他正式提出关系数据库的概念。 关系数据库管理系统(RDBMS)是支持关系模型的数据库管理系统。目前国际著名的关系数据库有:DB2,Oracle,SQL Server等。在我国,东软集团有限公司的OpenBa
2、se、人大金仓的Kingbase ES、武汉达梦公司的DM4和中国航天科技集团公司OSCAR已经成为我国的支柱型关系数据库产品。,2.1.2 关系数据模型的基本概念,关系模式: 学生(学号,姓名,性别,班级,成绩),2.1.2 关系数据模型的基本概念,1. 二维表,2 域(Domain) 域是一组具有相同数据类型的值的集合,又称值域(用D表示)。 例: 整数 介于某个取值范围的整数, D1=1,2,3,4,5 指定长度的字符串集合 D2=男,女 介于某个取值范围的日期,3 笛卡尔积(Cartesian Product),D1=曹景明,董丽丽,宋晓玲 D2=男,女,D1D2=,D1D2=(曹景明
3、,男), (曹景明,女), (董丽丽,男), (董丽丽,女), (宋晓玲,男), (宋晓玲,女),D3=,定义: 给定一组域(集合)D1,D2,Dn,这些域中可以有相同的,也可以完全不同。 D1,D2,Dn的笛卡尔积为: D1D2Dn(d1, d2, , dn)diDi,i1,2,n,所有域的所有取值的一个组合 不能重复 不是每一个记录都有现实意义,在数学上把所有可能的配对组合叫“笛卡尔积”,直观意义是诸集合各个元素间一切可能的有序的组合.,4 关系(Relation) 数学定义:笛卡尔积D1D2Dn的任一有限子集叫作在域D1,D2,Dn上的一个n元关系,表示为 R(D1,D2,Dn) R:关
4、系名 n:关系的目或度(Degree)元,学生(姓名,性别,班级),元组(Tuple) 笛卡尔积中每一个元素(d1,d2,dn)叫作一个n元组(n-tuple)或简称元组。 分量(Component) 笛卡尔积元组(d1,d2,dn)中的每一个值di叫作一个分量。 基数(Cardinal number) 若Di(i1,2,n)为有限集,其基数为mi(i1,2,n),则D1D2Dn的基数 M为: 在上例中,基数:2228,即D1D2D3共8个元组。,5 元组:关系中的每一行称为一个元组(记录) 6 属性:关系中的每一列称为属性(字段) 7 属性组:关系中多个属性的组合,如(学号,课程号) 8 码
5、:唯一标识一个元组的属性或属性组 码是由语义决定的 码具有最小性,(学号,性别)不是码,9 候选码:每一个码都被称为候选码 10 主码:选一个候选码作为区分实体的标志 11 主属性:所有候选码包含的属性(任何候选码中的属性) 12 非主属性:不包含在任何候选码中的属性 13 数据冗余:指数据之间的重复,也即同一数据在一个关系中出现多次,2.1.3 关系数据模型的组成,关系数据库系统是支持关系模型的数据库系统。 关系数据模型简称为关系模型,由关系数据结构、关系操作和关系完整性约束三部分组成。,1、关系数据结构 关系模型的数据结构是关系,在用户看来,其逻辑结构是一张二维表。 关系有以下特性: 每一
6、列中的分量都来自同一个域 不同的列可出自同一个域,称其中每一列为一个属性,不同的属性要给予不同的属性名 列的顺序无所谓,次序可以任意交换 任意两个元组不能完全相同,即任何两行不能完全相同 行的顺序无所谓,可任意交换 每个分量必须是不可再分的数据项,关系可分为三种类型:基本关系(通常又为基本表或基表)、查询表和视图表。 基本表实际存储数据的逻辑表示 查询表是查询结果对应的表 视图表是由基表或其他图表导出的表,是虚表,不对应实际存储的数据。,这张表是关系吗?,2、关系的操作 关系操作采用集合操作方式,也即操作的对象和结果都是集合。早期的关系操作能力通常用代数方式或逻辑方式来表示,分别称为关系代数和
7、关系演算。它们都是抽象的查询语言。还有一种介于上述两者之间的语言SQL,它是关系数据库的标准语言。 关系模型中常用的操作包括:选择、投影、连接、除、并、交、差等运算。,3、关系的完整性约束 在关系型数据库中,数据库的完整性是为了保证数据库中存储的数据的准确性和一致性。数据库是否具备完整性关系到数据库系统能否真实地反映现实世界。 数据完整性分为三类:实体完整性、参照完整性、用户定义的完整性。约束是实现数据完整性的重要方法,关系模型允许定义三类完整性约束:实体完整性约束、参照完整性约束和用户定义的完整性约束。其中实体完整性和参照完整性是关系模型必须满足的约束条件。,(1) 实体完整性约束 实体完整
8、性规则:若属性A是基本关系R的主属性,则属性A就不能取空值。所谓空值就是“不知道”或“无意义”的值。 说明: 实体完整性规则是针对基本关系而言的 具有唯一性标识 关系模型中以主码作为唯一性标识 主属性不能取空值,(2) 参照完整性约束 是指在两个关系之间指定的,用于维持两个关系的元组之间的一致性的。通俗地说,参照完整性约束规定的是一个关系中的元组引用另一个关系时,它引用的必须是那个关系中已经存在的元组。,例:学生(学号,姓名,性别,所在学院) 学院(学院名,院长,联系电话) 学生关系中的某个属性的取值需要参照学院关系的属性取值。,外码(外关键字)的定义:设F是基本关系R的一个或一组属性,但不是
9、关系R的码,如果F与基本关系S的主码Ks相对应,则称F是基本关系R的外码,并称基本关系R为参照关系,基本关系S为被参照关系或目标关系。关系R和S不一定是不同的关系。显然,目标关系S的主码Ks和参照关系的外码F必须定义在同一个域上。,学生(学号,姓名,性别,所在学院) 学院(学院名,院长,联系电话),例: 两个以上关系间存在的引用关系 学生(学号,姓名,性别,出生日期) 课程(课程号,课程名,学分) 学生选课(学号,课程号,成绩),例:同一关系内部属性间存在的引用关系 学生(学号,姓名,性别,出生日期,班长),需要指出的是,外码并不一定要与相应的主码同名。不过,在实际应用中,为了便于识别,当外码
10、与相应的主码属于不同关系时,往往给它们取相同的名字。参照完整性规则就是定义外码与主码之间的引用规则。,参照完整性规则:若基本关系R中含有与另一个基本关系S的主码Ks相对应的属性组F(F称为R的外码),则对于R中每个元组在F上的取值必须是: (1)或者取空值(F的每个属性值均为空值); (2)或者等于S中某个元组的主码值。 关系S的主码Ks和F定义在同一个域上。基本关系R和S不一定是不同的关系。,(3) 用户定义的完整性约束 用户定义完整性就是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。 如:某个属性的取值范围在0100之间等。,weight=10 and
11、 weight=30 weight between 10 and 30 kscj between 0 and 100 Ssex in (男, 女),2.2 关系运算简介,关系模型的数学基础是关系代数。 关系代数是一种抽象的查询语言,用对关系的运算来表达查询。 关系代数的运算对象是关系,运算结果也是关系。 关系代数运算符:集合运算符、专门的关系运算符、算术比较符和逻辑运算符。 关系代数运算按运算符分类:传统的集合运算(并、交、差、广义笛卡尔积)和专门的关系运算(选择、投影、连接)。,关系代数运算符,集合运算,(1) 并,(2) 交,集合运算,(3) 差,集合运算,(4) 广义笛卡尔积,2.2.1
12、 选择运算,选择运算是从关系中选取满足一定条件的记录(元组),其运算结果是一个新的关系。也就是说,对数据表中的记录进行筛选,使操作只对选中的记录有效。 选择运算可表示为: 条件(关系) 选择运算是从行的角度进行的运算,查询计算机系全体学生: Sdept=计算机(Student),查询计算机系年龄小于20岁的女同学: Sdept=计算机 Sage20Ssex=女(Student),2.2.2 投影运算,投影运算是从关系中选择出若干属性列组成新的关系。 投影运算表示为:属性1,属性2,属性n(关系) 投影操作主要是从列的角度进行运算。,b. 查询学生所在系: Sdept(Student),查询学生姓名和所在系: Sname, Sdept(Student),投影之后不仅取消了原关系中的某些列,而且还可能取消某些元组(避免重复行),查询计算机系所有学生的姓名和学号,Sno,Sname( ),Sdept=计算机(Student),查询所有不超过19岁的女同学姓名,Sname( ),Sage19Ssex=女(Student),2.2.3 连接运算,连接运算是从两个关系的笛卡尔积中选取满足一定连接条件的元组集合。 连接运算表示为: ,是比较运算符。 一般的连接操作是从行的角度进行运算。,连接,广义笛卡尔积,连接,等值连接,连接,等值连接,自然连接:等值连接中去掉重复的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省青州市吴井初级中学2025-2026学年初三第一次摸底考试数学试题理试题含解析
- 电力系统运行维护技术规范指南
- 建筑工程施工安全预案与紧急处理指南
- 企业预算制定与实施执行模板
- 公司员工培训规划及课程安排模板
- 企业资金运作及风险管理工具
- 项目施工进度和质量保障承诺书(3篇)
- 企业内审流程及问题反馈工具
- 跨部门项目协调单工具实时跟进和反馈模块整合版
- 文明气象传递承诺书9篇
- 工程项目竣工资料归档与移交规范
- 电力线路巡检报告模板
- 劳务合同2026年合同协议
- 高中数学资优生导师培养模式与教学资源整合研究教学研究课题报告
- 商业综合体弱电系统施工方案
- 2025年选拔乡镇副科级干部面试真题附答案
- 鼾症科普宣传课件
- 有趣的汉字小故事
- 中国特发性颅内压增高诊断与治疗专家共识(新版)课件
- 2025华夏银行郑州分行社会招聘备考题库及完整答案详解1套
- 《玄女经》白话文译注与原文对照
评论
0/150
提交评论