第二章关系数据库.doc

上传人:s9****2 文档编号:550322430 上传时间:2023-07-10 格式:DOC 页数:4 大小:108KB
返回 下载 相关 举报
第二章关系数据库.doc_第1页
第1页 / 共4页
第二章关系数据库.doc_第2页
第2页 / 共4页
第二章关系数据库.doc_第3页
第3页 / 共4页
第二章关系数据库.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《第二章关系数据库.doc》由会员分享,可在线阅读,更多相关《第二章关系数据库.doc(4页珍藏版)》请在金锄头文库上搜索。

1、第二章 关系数据库习题(必做题1,3,4,5,6)1试述关系模型的三个组成部分。2试述关系数据语言的特点和分类。3定义并理解下列术语,说明他们之间的联系与区别:(1)域、笛卡儿积、关系、元组、属性(2)主码、候选码、外部码(3)关系模式、关系、关系数据库4试述关系模型的完整性规则。在参照完整性中,为什么外部码属性的值也可以为空?什么情况下才可以为空?5设有一个SPJ数据库,包括S、P、J、SPJ四个关系模式:S(SNO, SNAME, STATUS, CITY)P(PNO, PNAME, COLOR, WEIGHT)J(JNO, JNAME, CITY)SPJ(SNO, PNO, JNO, C

2、ITY)供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT)组成;工程项目表J由工程项目代码(SNO)、工程项目名(JNAME)、工程项目所在城市(CITY)组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数量(QTY)组成,表示某供应商供应某零件给某工程项目的数量为QTY。今有若干数据如下:S表SNOSNAMESTATUSCITYS1精益20天津S2盛锡10北京S3东方红30北京S4丰泰盛

3、20天津S5为民30上海P表PNOPNAMECOLORWEIGHTP1螺母红12P2螺栓绿17P3螺丝刀蓝14P4螺丝刀红14P5凸轮蓝40P6齿轮红30J表JNOJNAMECITYJ1三建北京J2一汽长春J3弹簧长天津J4造船厂天津J5机车长唐山J6无线电厂常州J7半导体长南京SPJ表SNOPNOJNOQTYS1P1J1200S1P1J3100S1P1J4700S1P2J2100S2P3J1400S2P3J2200S2P3J4500S2P3J5400S2P5J1400S2P5J2100S3P1J1200S3P3J1200S4P5J1100S4P6J3300S4P6J4200S5P2J4100

4、S5P3J1200S5P6J2200S5P6J4500试分别用关系代数、ALPHA语言、QBE语言完成下列操作:(1) 求供应工程J1零件的供应商号SNO;(2) 求供应工程J1零件P1的供应商号SNO;(3) 求供应工程J1红色零件的供应商号SNO;(4) 求没有使用天津供应商生产的红色零件的工程号JNO;(5) 求至少使用了S1供应商所供应的全部零件的工程号JNO;6试述等值连接与自然连接的区别和联系。7关系代数的基本运算有哪些?如何用这些基本运算来表示其他运算?参考答案1答:关系模型关系数据结构、关系操作集合和关系完整性约束三部分组成。2答:关系数据语言可以分为三类:关系数据语言:关系代

5、数语言= 例如ISBL、关系演算语言=元组关系演算语言=例如APLHA,QUEL、关系演算语言=域关系演算语言=例如QBE具有关系代数和关系演算双重特点的语言 例如 SQL操作语言;功能强;能够嵌入高级语言中使用。3(1)答:域:域是一组具有相同数据类型的值的集合。笛卡儿积:给定一组成域D1,D2,Dn,这些域中可以有相同的。这组域的笛卡儿积为D1D2Dn=(d1,d2,dn)ldi Di,i=1,2,n其中每一个元素(d1,d2,dn)叫做一个n元组(n-tuple)或简称元组(Tuple)。元素中的每一个值di叫做一分量(Component)。关系:在域D1,D2,Dn上笛卡儿积D1D2D

6、n的子集称为关系表示为R(D1,D2,Dn)元组:关系中的每个元素的关系中的元组。属性:关系也是一个二维表,表的每行对应一个元组,表的每列对应一个域。由于域可以相同,为了加以区分,必须对每列起一名字,称为属性(Attribute)。(2)答:候选码:若关系中的某一属性组的值能惟一地标识一个元组,则称该属性组为候选码(Candidate key)。主码:若一个关系有多个候选码,则选定其中一个为主码(Primary key)。外部码:设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S主码KS相对应,则称F是基本关系R的外部码(Foreign key),简称外码。基本关系R称为参

7、照关系(Referencing relation),基本关系 S称为被参照关系(Referenced relation)或目标关系(Target relation)。关系R和S可以是相同的关系。(3)答:关系模式:关系的描述称为关系模式(Relation Schema)。它可以形式地表示为 R(U,D,dom,F)其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,dom为属性向域的映像集合,F为属性间数据的依赖关系集合。关系:在域D1,D2,Dn上笛卡儿积D1D2Dn的子集称为关系,表示为 R(D1,D2,Dn)关系是关系模式在某一时刻的状态或内容。关系模式是静态的、稳

8、定的;而关系是动态的、随时间不断变化的,因为关系操作在不断更新着数据库中的数据。 关系数据库:关系数据库也有型和值之分。关系数据库的型也称为关系数据库模式,是对关系数据库的描述,它包括若干域的定义以及在这些域上定义的若干关系模式。关系数据库的值是这些关系模式在某一时刻对应的关系的集合,通常就称为关系数据库。4答:关系模型的完整性规则是对关系的某种约束条件。关系模型中可以有三类完整性约束:实体完整性、参照完整性和用户定义的完整性。其中实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称做是关系的两个不变性,应该由关系系统自动支持。(1)实体完整性规则:若属性A是基本关系R的主属性,则属

9、性A不能取空值。(2)参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的主码KS相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值必须为:(1)或者取空值(F的每个属性值均为空值);(2)或者等于S中某个元组的主码值。(3)用户定义的完整性是针对某一具体关系数据库的约束条件。它反映某一具体应用所涉及的数据必须满足的语义要求。在参照完整性中,外部码属性的值可以为空,它表示该属性的值尚未确定,但前提条件是该外部码属性不是其所在关系的主属性。例如,在下面的”学生”表中,”专业号”是一个外部码,不是学生表的主属性,可以为空,其语义是,该学生的专业尚未确定。

10、学生(学号,姓名,性别,专业号,年龄) 专业(专业号,专业名)而在下面的”选修”表中的”课程号”虽然也是一个外部码属性,但它又是”课程”表的主属性,所以不能为空,因为关系模型必须满足实体完整。 课程(课程号,课程名,学分) 选修(学号,课程号,成绩)5(1)答:关系代数:ALPHA语言GET W(SPJ。SNO):SPJ。JNO=J1 QBE语言SPJSNOPNOJNOQTYP。SIJI(2)答:关系代数ALPHA语言 GHT W(SPJ。SNO):SPJ。JNO=J PNO=PIQBE语言SPJSNOPNOJNOQTYP。SIPIJI(3)答:关系代数ALPHA语言 RANGE PX GET

11、 W (SPJ。SWO):PX(PX。PNO=SPJ。PNOSPJ。JNO=JPX。COLOR=红QBE语言SPJSNOPNOJNOQTYP。SIPIJIPPNOPNAMECOLORWEIGHTPI红(4)答:关系代数(5)答:关系代数6答:连接运算中有两种最为重要也最为常用的连接,一种是等值连接(Equijoin),另一种自然连接(Natural join)。为”=“的连接运算,称为等值连接。它是从关系R与S的笛卡儿积中选取A、B属性值相等的那些元组。即等值连接为自然连接(Natural join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉。即若R和S具有相同的属性组B,则自然连接可记为7、答:在八种关系代数的基本运算中,并、差、笛卡儿积、投影和选择五种运算为基本的运算。其他三种运算,即交、连接和除,均可以用五种基本运算来表达。交运算:RS=R-(R-S)连接运算:除运算:X、Y、Z为属性组,R中的Y和S中的Y可以有不同的属性名,但必须出自相同的域集。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号