《数据库原理与应用 教学作者林 小 玲第2章习题答案.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用 教学作者林 小 玲第2章习题答案.docx(7页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第2章习题答案一、填空题1 .在关系中,每个属性的取值范围称为属性的。1.1. 知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日 期,专业,系编号)两个关系,系关系的主码是 系编号 ,系关系的外码是无, 学生关系的主码是学号,学生关系的外码是系编号 .3 .设有学生关系:S (XH, XM, XB, NL, DP)。在这个关系中,XH表示学号,XM表示姓名, XB表示性别,NL表示年龄,DP表示系部。查询学生姓名和所在系的投影操作的关系运算式 是乃 尸(S) 。4 .模式(Schema)是数据库中全体数据的逻辑结构 和特征一的描述,它仅仅涉及到_ 1的描述,不涉及到具
2、体的值。二、选择题.在下列关系代数的操作中,哪一个不属于专门的关系运算(C)A、自然连接B、投影C、广义笛卡尔积D、连接.根据关系数据基于的数据模型关系模型的特征判断下列正确的一项(B)A、只存在一对多的实体关系,以图形方式来表示B、以二维表格结构来保存数据,在关系表中不允许有重复行存在C、能体现一对多、多对多的关系,但不能体现一对一的关系D、关系模型数据库是数据库发展的最初阶段.有关系R和S, RCIS的运算等价于(B)A、S-(R-S) B、R-(R-S) C、(R-S)US D、R U (R-S).取出关系中的某些列,并消去重复的元组的关系运算称为(C)A、取列运算B、投影运算C、连接运
3、算D、选择运算.设关系R和S的属性个数为r和s ,则(R*S)操作结果的属性个数为(A )A r+s B r-s C r*s D、max(r+s).有一个关系:学生(学号,姓名,系别),规定学号的值域是8个数字组成的字符串, 这一规则属于(C)A.实体完整性约束B、参照完整性约束C、用户自定义完整性约束 D、关键字完整性约束.在下列关于关系的陈述中,错误的是(B)A、表中任意两行的值不能相同B、表中任意两列的值不能相同C、行在表中的顺序无关紧要D、列在表中的顺序无关紧要一个关系数据库表文件中的各条记录(D )A、前后顺序不能任意颠倒,一定要按照输入的顺序排序B、前后顺序不能任意颠倒,一定要按照
4、关键字段值的顺序排列C、前后顺序可以任意颠倒,但排列顺序不同,统计处理的结果可能不同D、前后顺序可以任意颠倒,不影响数据库表中数据的实际意义.关系数据库管理系统实现的专门关系运算包括(C)A、排序、索引、统计 B、关联、更新、排序C、选择、投影、联接 D、并、交、差.在关系数据库系统中,当合并两个关系时,用户程序可以不变。这是(C)A、数据的物理独立性B、数据的位置独立性C、数据的逻辑独立性D、数据的存储独立性.下面的选项不是关系数据库基本特征的是(A )。A.不同的列应有不同的数据类型B.不同的列应有不同的列名C.与行的次序无关 D.与列的次序无关.一个关系只有一个(D ) oA.候选码 B
5、.外码 C.超码 D.主码.关系模型中,一个码是()。A.可以由多个任意属性组成 B.至多由一个属性组成C.由一个或多个属性组成,其值能够惟一标识关系中一个元组D.以上都不是9 .现有如下关系:患者(患者编号,患者姓名,性别,出生日期,所在单位)医疗(患 者编号,医生编号,医生姓名,诊断日期,诊断结果)其中,医疗关系中的外码是(A )。A.患者编号B.患者姓名C.患者编号和患者姓名 D.医生编号和患者编号.关系代数运算是以(C )为基础的运算。A.关系运算B.谓词演算 C.集合运算 D.代数运算.关系数据库管理系统应能实现的专门关系运算包括(B )。A.排序、索引、统计 B.选择、投影、连接C
6、.关联、更新、排序 D.显示、打印、制表10 .五种基本关系代数运算是(A )oA. U X 0 nB. U o jiC. U Cl X 0 nD. U Cl o n.关系数据库中的投影操作是指从关系中(B )。A.抽出特定记录B.抽出特定字段C.建立相应的影像I),建立相应的图形.从一个数据库文件中取出满足某个条件的所有记录形成一个新的数据库文件的操作是 (C )操作。A.投影 B.连接 C.选择 D.复制20.关系代数中的连接操作是由(B )操作组合而成A.选择和投影B.选择和笛卡尔积C.投影、选择、笛卡尔积D.投影和笛卡尔积.一般情况下,当对关系R和S进行自然连接时,要求R和S含有一个或
7、者多个共有的 (C )。A.记录 B.行C.属性D.元组.假设有关系R和S,关系代数表达式R (R S)表示的是(A )。A.RC1S B. RUS C. R-S D.RXS三、简答题1 .解释关系模式和关系的区别答:关系模式:关系的描述称为关系模式(Relation Schema).它可以形式化地表示为 R(U ,D , dom, F)其中R为关系名,U为组成该关系的属性名集合,D为属性组U中属性所来自的域,doni为属 性向域的映像集合,F为属性间数据的依赖关系集合。关系:在域Di, D2,,Dn上笛卡儿积Di XD2XXDn的子集称为关系,表示为R(Di, Dj, , Dn)关系是关系模
8、式在某一时刻的状态或内容。关系模式是静态的、稳定的;而关系是动态 的、随时间不断变化的,因为关系操作在不断更新着数据库中的数据。2 .给出主码,候补码,外码的定义,并说明它们之间的联系与区别。答:候选码:若关系中的某一属性组的值能惟一地标识一个元组,则称该属性组为候选码(Candidate key)。主码:若一个关系有多个候选码,则选定其中一个为主码(Primary key)。外部码:设F是基本关系R的一个或一组属性,但不是关系R的码,如果F与基本关系S 的主码L相对应,则称F是基本关系R的外部码(Foreign key),简称外码。基本关系R称为参照关系(Referencing relati
9、on),基本关系S称为被参照关系 (Referenced relation)或目标关系(TargctMation)。关系R和S可以是相同的关系。3 .在关系模型的参照完整性规则中,为什么外码属性的值也可以为空?什么条件下才可以 为空。答:关系模型的完整性规则是对关系的某种约束条件。关系模型中可以有三类完整性约束: 实体完整性、参照完整性和用户定义的完整性。参照完整性规则:若属性(或属性组)F是基本关系R的外码,它与基本关系S的 主码K,相对应(基本关系R和S不一定是不同的关系),则对于R中每个元组在F上的值 必须为:1)或者取空值(F的每个属性值均为空值);2)或者等于S中某个元组的主码值。在
10、参照完整性中,外部码属性的值可以为空,它表示该属性的值尚未确定,但前提条件是 该外部码属性不是其所在关系的主属性。例如,在下面的”学生表中,“专业号”是一个外部码,不是学生表的主属性,可以为空,其 语义是,该学生的专业尚未确定。学生(学号,姓名,性别,专业号,年龄)专业(专业号,专业名)而在下面的选修表中的“课程号虽然也是一个外部码属性,但它又是课程表的主属 性,所以不能为空,因为关系模型必须满足实体完整性。课程(课程号,课程名,学分)选修(学号,课程号,成绩)4 .试述关系模型的概念,定义并解释以下术语:(1)关系(2)属性(3)域(4)元 组(5)主码(6)分量(7)关系模式答:关系模型由
11、关系数据结构、关系操作集合和关系完整性约束三部分组成。在用户观点 下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。(1)关系:一个关系 对应通常说的一张表。(2)属性:表中的一列即为一个属性;(3)域:属性的取值范 围:(4)元组:表中的一行即为一个元组:(5)码:表中的某个属性组,它可以唯一 确定一个元组;(6)分量:元组中的一个属性值;(7)关系模式:对关系的描述,一 般表示为:关系名(属性1,属性2, ?,属性n)。5 .试述关系数据库的特点。答:关系数据模型具有下列优点:?关系模型与非关系模型不同,它是建立在严格的数 学概念的基础上的。?关系模型的概念单一。无论实体还是实体之
12、间的联系都用关系表示。 操作的对象和操作的结果都是关系。所以其数据结构简单、清晰,用户易懂易用。?关系 模型的存取路径对用户透明,从而具有更高的数据独立性、更好的安全保密性,也简化了程 序员的工作和数据库开发建立的工作。当然关系数据模型也有缺点其中最主要的缺点是, 由于存取路径对用户透明,查询效率往往不如非关系数据模型。因此为了提高性能,必须对 用户的查询请求进行优化,增加了开发数据库管理系统软件的难四、应用题1 .设有一个SPJ数据库,包括S, P,J, SPJ四个关系模式:S( SNO, SNAME, STATUS, CITY);P(PNO, PNAME, COLOR, WEIGHT);J
13、(JNO, JNAME, CITY);SPJ(SNO, PNO, JNO, QTY);供应商表S由供应商代码(SNO)、供应商姓名(SNAME)、供应商状态(STATUS)、供应商所在城 市(CITY)组成;零件表P由零件代码(PNO)、零件名(PNAME)、颜色(COLOR)、重量(WEIGHT) 组成;工程项目表J由工程项目代码(JNO)、工程项目名(JNAME)、工程项目所在城市(CITY) 组成;供应情况表SPJ由供应商代码(SNO)、零件代码(PNO)、工程项目代码(JNO)、供应数 量(QTY)组成,表示某供应商供应某种零件给某工程项目的数量为QTY。试用关系代数完成如下查询:(1
14、)求供应工程J1零件的供应商号码SNO;求供应工程J1零件P1的供应商号码SNO;(3)求供应工程J1零件为红色的供应商号码SNO;(4)求没有使用天津供应商生产的红色零件的工程号JNO;(5)求至少用了供应商S1所供应的全部零件的工程号JNOo答:(1)求供应工程J1零件的供应商号SN0;阳政9f八(2)求供应工程J1零件P1的供应商号SN0;阳na 9Jno=U r八 (SPJ)(3)求供应工程JI零件为红色的供应商号码SN0;心向*(巴红)x (SPJ)(4)求没有使用天津供应商生产的红色零件的工程号JNO乃八。(SPJ -(SPJ x CFm/or = 红,()X 67),= 天津(
15、S)解析减法运算中被减的部分是使用了天津供应商生产的红色零件的所有工程号,nJW(J)是全部工程的工程号,两者相减就是没有使用天津供应商生产的红色零件的工程 号,包括没有使用任何零件的工程号。(SPJ)(5)求至少用了供应商S1所供应的全部零件的工程号JNOo兀JNO、PNO(SPJ) + 兀PNO(%N0=3解析:上面公式中除号前的部分是所有工程与该工程所用的零件,除号后的部分是S1所供应 的全部零件号。对于SPJ表中的某一个JNO,如果该工程使用的所有零件的集合包含了 S1所供应的全部零件号,则该JNO符合本题条件,在除法运算的结果集中。可以看到,使 用关系代数的除法运算概念清晰,语言表达
16、也很简单。2 .设有如下图所示的关系S, SC和C,写出以下查询的关系代数表达式和执行结果” (其中Age和Grade为数值型,其它各属性都是字符型)SnoSnamcAgeSex1李强23男2刘丽22女3张有20男SnoSnamcAgeSex1李强23男2刘丽22女3张有20男SnoCnoGrade1KI862KI805KI902K5675K5785K843SCCnoCnameTeacherKIC语言王华K5数据库程军K8编译原理程军1)检索年龄大于21的男学生的学号(Sno)和姓名(Sname),兀SNO.Sname (bAg“2l(S)2)检索李强同学所选修的课程的课程号(Cno)。李强,
17、(SxSC).高校项Fl管理数据库中的关系如下:Teacher(tnu, tname, sex, age, degree, depart)Project(pnu, pname, type, fee, starttime, endtime, conclusion)Implicate(tnu, pnu, role, period)其中Teacher表示教师,可简单地用T表示,tnu, tname, sex, age, degree, dcpait分 别表示教师编号、姓名、性别、年龄、学历和所属部门;Project表示项目,可简单地用P 表示,pnu, pname, type, fee, start time, endtime, conclusion 分别表示项目编号、名 称、类型、费用、开始时间、结束时间和结题结论。Implicate表示参与,可简单地用I表 示,role, period分别表示教师在项目中承担的角色和参与的时间(月数)。用关系代数表 达下列查询(1)参与过20万元及以上项目的教师姓名和所属部门;(2) 至少参与过两个项目的教师姓名和年龄。答案:1) Iltnamc .depart 9 fce=20(TX I XP)2 ) FItnatne. age (TX(O i=5A2*6 (I XI)
限制150内