




免费预览已结束,剩余20页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,SQLServer数据库原理及应用第二章关系数据库系统模型,第二章关系数据库系统模型,2.1关系模型2.1.1数据结构2.1.2关系操作2.1.3关系的完整性2.2关系代数2.2.1关系运算2.2.2关系数据检索实例2.3关系演算,关系数据库系统模型,数据结构在关系模型中的基本的数据结构是按二维表形式表示的,由行和列组成。一张二维表称为一个关系,水平行称之为元组,垂直的列称为属性,元组相当于其它数据结构中的记录或片段,单个数据项称之为分量。关系数据库是表的集合,每张表有唯一的名字。表中一行代表的是一系列值之间的联系。,关系模型,关系(Relation):一个关系对应于一张二维表,每个关系有一个关系名,在计算机中可以作为一个文件存储起来。定义2.1D1D2Dn的子集叫作在域D1、D2、Dn上的关系,用R(D1,D2,Dn)表示。这里R表示关系的名字,n是关系的目或度(Degree)。,关系模型,定义2.2关系的描述称为关系模式(RelationSchema)。一个关系模式应当是一个五元组。它可以形式化地表示为:R(U,D,DOM,F)。其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,DOM为属性向域的映象集合,F为属性间数据的依赖关系集合。,关系操作,关系操作的方式是集合操作,即操作的对象与结果都是集合。这种操作方式亦称为一次一集合方式,相应的非关系模型的数据操作方式则为一次一记录方式。关系的操作是高度非过程化的,用户只需要给出具体的查询要求,存取路径的选择由DBMS(数据库管理系统)的优化机制来完成。关系操作能力可用代数方式和逻辑方式表示,即关系代数和关系演算。,笛卡儿积,把关系看成一个集合,转换成数学的集合以及集合的运算问题。定义2.3笛卡儿积:设D1,D2,Dn为n个集合,称D1D2Dn(d1,d2,dn)Di,(I=1,2,n)为集合的笛卡儿积。Di(I=1,2,n)即为以上定义的域;其中的每一个元素(d1,d2,dn)即为以上定义的元组;n表示参与笛卡儿积的域的个数,称作度。同时它也表示了每一个元组中分量的个数,n=1,称为一元组,n=2,称为二元组,n=p称为p元组。,关系的完整性,关系模型的完整性规则是用来约束关系的,以保证数据库中数据的正确性和一致性。关系模型的完整性共有三类:实体完整性参照完整性用户定义的完整性。数据完整性由实体完整性和参照完整性规则来维护,实体完整性和参照完整性是关系模型必须满足的完整性约束条件,将由关系系统自动支持。,关系运算,一个n元关系是多个元组的集合,n是关系模式中属性的个数,称为关系的目数。可把关系看成一个集合。集合的运算如并、交、差、笛卡尔积等运算,均可用到关系的运算中。关系代数的运算可以分为两类:一类是传统的集合运算,另一类是专门的关系运算。,关系运算,(1)传统的集合运算,如并、交、差、广义笛卡儿积。这类运算将关系看成元组的集合,运算时从行的角度进行。(2)专门的关系运算,如选择、投影、连接、除。这些运算不仅涉及行而且也涉及到列。,传统的集合运算,1.并(Union)运算RS=t|tRtS2.差(Difference)运算RS=t|tRtS3.交(Intersection)运算RS=t|tRtS4.广义笛卡儿乘积(Extendedcartesianproduct)RS=trts|trRtsS,专门的关系运算,1.选择(Selection)运算F(R)=t|tRF(t)=TRUE2.投影(Projection)运算i1,i2,i3,im(R)=t|t=(ti1,ti2,ti3,tim)(ti1,ti2,ti3,tim)R3.连接(Join)运算RS=R.AS.B(RS)4.自然连接(NationalJoin)运算RS=i1,i2,i3,ik(R.A1=S.A1R.A2=S.A2R.Ak=S.Ak(RS),专门的关系运算,5.左连接(LeftJoin)运算(R)LJN(S)R.A1=S.A1R.A2=S.A2R.Ak=S.Ak6.右连接(RightJoin)运算(R)RJN(S)R.A1=S.A1R.A2=S.A2R.Ak=S.A7.除法(division)运算RS=tX|tRYxY(S),关系数据检索实例,可涉及的实体集有两个“学生表”和“课程表”,还涉及到两个实体集的联系“选课”。例如:查询计算机信息学院全体学生Sdept=计算机信息学院(Student)或5=计算机信息学院(Student),关系演算,关系演算按照谓词变量的不同分为两类:元组关系演算和域关系演算。元组关系演算以元组为变量,这个变量是在某个关系或几个关系的并中取某些元组为其值,也就是说在任一给定的时刻,这个变量代表了这个关系中的某一元组。域关系演算以域为变量,这个变量是在某个关系中取某些属性的值,也就是说,在任一给定的时刻,这个变量代表了关系中的某一个域。,元组关系演算,原子公式有三种类型:R(t)R是关系名,t是元组变量,R(t)表示t是R的一个元组,即tR。tiujt和u是元组变量,是算术比较运算符,ti,uj表示t的第i个分量和u的第j个分量。tiuj表示t的第i个分量和u的第j个分量满足比较关系。tiC或CtiC为常数,表示t的第i个分量和常数C满足比较关系。,元组关系演算语言,元组关系演算使用的是元组关系演算语言。元组关系演算语言的特点是使用了元组变量,元组变量的变化范围为某一命名的关系,把它看作一个基本的运算对象,在任一给定的时刻,元组变量的值就是它所对应的那个关系中的某个元组。,(1)检索操作,简单检索(即不带条件的检索)限定的检索(即带条件的检索)带排序的检索带定额的检索用元组变量的检索用存在量词的检索带有多个关系的表达式的检索用全称量词的检索用两种量词的检索用蕴函(Implication)的检索,(2)集函数,关系数据语言中建立了有关这类运算的标准函数库供用户选用。这类函数通常称为集函数(Aggregationfunction)或内部函数(Build-infunction)。关系演算中提供了COUNT(),TOTAL(),MAX(),MIN(),AVG()等集函数。,(3)修改操作,修改操作用UPDATE语句实现。步骤:用HOLD语句将要修改的元组从数据库中读到工作空间中用宿主语言修改工作空间中元组的属性用UPDATE语句将修改后的元组送回数据库中,(4)插入操作,插入操作用PUT语句实现。步骤:用宿主语言在工作空间中建立新元组用PUT语句把该元组存入指定的关系中。,(5)删除操作,删除操作用DELETE语句实现。步骤:用HOLD语句把要删除的元组从数据库中读到工作空间中用DELETE语句删除该元组,域关系演算语言QBE,1.域关系演算域关系演算的通用表达式为x1,x2,xk|(x1,x2,xk)其中x1,x2,xk是域变量,是由原子公式和运算符组成的公式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年会计硕士模考模拟试题附参考答案详解【满分必刷】
- 2025年中医内科中医诊断治疗技术综合考核试题答案及解析
- 平安银行惠州市博罗县2025秋招面试典型题目及参考答案
- 2025年焊工考试题库试题(能力提升)附答案详解
- 招商银行济宁市邹城市2025秋招笔试综合模拟题库及答案
- 招商银行唐山市路南区2025秋招笔试价值观测评题专练及答案
- 2025年杭州市临平区事业单位紧缺专业人才招聘26人笔试备考题库及完整答案详解1套
- 招商银行无锡市新吴区2025秋招笔试价值观测评题专练及答案
- 农发行苏州市姑苏区2025秋招笔试创新题型专练及答案
- 2025年押题宝典执业药师之《西药学专业一》题库含答案详解(综合题)
- 2025年吉林省中考数学试卷真题(含答案详解)
- 综治中心培训课件
- PCR基本知识课件
- GB/T 45716-2025半导体器件金属氧化物半导体场效应晶体管(MOSFETs)的偏置温度不稳定性试验
- 医学美容技术专业教学标准(高等职业教育专科)2025修订
- 新生儿溢奶吐奶呛奶处理指南
- 初中英语单元整体教学设计现状调查研究
- 服务安全风险管理制度
- 武警考试题库及答案
- 2024年四川省委网信办遴选公务员真题
- 活动承办方协议书
评论
0/150
提交评论