2.8 练习与实践2

1.选择题

(1)对关系模型叙述错误的是( )。

A.建立在严格的数学理论、集合论和谓词演算公式的基础之上

B.微机DBMS绝大部分采取关系数据模型

C.用二维表表示关系模型是其一大特点

D.不具有连接操作的DBMS也可以是关系数据库系统

(2)关系数据库管理系统应能实现的专门关系运算包括( )。

A.排序、索引、统计 B.选择、投影、连接

C.关联、更新、排序 D.显示、打印、制表

(3)笛卡儿积是( )进行运算。

A.向关系的垂直方向

B.向关系的水平方向

C.既向关系的水平方向也向关系的垂直方向

D.先向关系的垂直方向,然后再向关系的水平方向

(4)关系模型中,一个关键字( )。

A.可由多个任意属性组成

B.至多由一个属性组成

C.可由一个或多个其值能唯一标识该关系模式中任何记录的属性组成

D.以上都不是

(5)自然连接是构成新关系的有效方法。一般情况下,当对关系R和S使用自然连接时,要求R和S含有一个或多个共有的( )。

A.记录 B.行 C.记录 D.属性

(6)关系运算中花费时间可能最长的运算是( )。

A.投影 B.选择 C.笛卡儿积 D.除

(7)关系模式的任何属性( )。

A.不可再分 B.可再分

C.命名在该关系模式中可以不唯一 D.以上都不是

(8)在关系代数的传统集合运算中,假定有关系R和S,运算结果为W。如果W中的记录属于R,并且属于S,则W为( )运算的结果。

A.笛卡儿积 B.并 C.差 D.交

(9)数据完整性约束条件主要指( )。

A.用户操作权限的约束 B.用户口令校对

C.值的约束和结构的约束 D.并发控制的约束

(10)关系代数的5个基本操作是( )。

A.并、交、差、笛卡儿积、除法 B.并、交、选取、笛卡儿积、除法

C.并、交、选取、投影、除法 D.并、选取、差、笛卡儿积、投影

(11)以下有关空值的叙述中不正确的是( )。

A.用=NULL查询指定列为空值的记录

B.包含空值的表达式其计算结果为空值

C.聚集函数通常忽略空值

D.对允许空值的列排序时,包含空值的记录总是排在最前面

(12)自然连接是( )进行运算。

A.向关系的垂直方向

B.向关系的水平方向

C.既向关系的水平方向也向关系的垂直方向

D.先向关系的垂直方向,然后再向关系的水平方向

2.填空题

(1)一个关系模式的定义格式为____。

(2)一个关系模式的定义主要包括____、____、____、____和____。

(3)关系代数运算中,传统的集合运算有____、____、____和____。

(4)关系代数运算中,基本的运算是____、____、____、____和____。

(5)关系代数运算中,专门的关系运算有____、____和____。

(6)关系数据库中基于数学上的两类运算是____和____。

(7)已知系(系编号,系名称,系主任,电话,地点)和学生(学号,姓名,性别,入学日期,专业,系编号)两个关系,系关系的主关键字是____,系关系的外关键字是____,学生关系的主关键字是____,外关键字是____。

(8)完整性约束条件所用的对象有____、____和____。

(9)关系代数是用对关系的运算来表达查询的,而关系演算是用____查询的,它又分为____演算和____演算两种。

(10)传统的集合“交、并、差”运算施加于两个关系时,这两个关系的____必须相等,____必须取自同一个域。

(11)在一个实体表示的信息中,称____为关键字。

3.简答题

(1)简述等值连接与自然连接的区别。

(2)设有如下所示的关系S(S#,SNAME,AGE,SEX)、C(C#,CNAME,TEACHER)和SC(S#,C#,GRADE),试用关系代数表达式表示下列查询语句。

1)检索“程军”老师所授课程的课程号(C#)和课程名(CNAME)。

2)检索年龄大于21的男学生学号(S#)和姓名(SNAME)。

3)检索至少选修“程军”老师所授全部课程的学生姓名(SNAME)。

4)检索“李强”同学不学课程的课程号(C#)。

5)检索至少选修两门课程的学生学号(S#)。

6)检索全部学生都选修的课程的课程号(C#)和课程名(CNAME)。

7)检索选修课程包含“程军”老师所授课程之一的学生学号(S#)。

8)检索选修课程号为k1和k5的学生学号(S#)。

9)检索选修全部课程的学生姓名(SNAME)。

10)检索选修课程包含学号为2的学生所修课程的学生学号(S#)。

11)检索选修课程名为“C语言”的学生学号(S#)和姓名(SNAME)。

(3)设有如图2-12所示的关系R和S:

978-7-111-66147-4-Chapter02-127.jpg

图2-12 简答题(3)图

计算下列运算的值。

1)R-S

2)πA,B(S)

(4)设有关系R,S如图2-13所示,求R978-7-111-66147-4-Chapter02-128.jpgS。

978-7-111-66147-4-Chapter02-129.jpg

图2-13 简答题(4)图

(5)设关系R,S分别如图2-14所示,求R÷S的结果。

978-7-111-66147-4-Chapter02-130.jpg

图2-14 简答题(5)图

(6)设有如图2-15所示的关系R、S、T,计算:R∪T、σC<A(R)、τF、E(S)、R978-7-111-66147-4-Chapter02-131.jpgS、R÷S。

978-7-111-66147-4-Chapter02-132.jpg

图2-15 简答题(6)图

4.实践题

(1)设某商业集团数据库中有3个实体集。一是“公司”实体集,属性有公司编号、公司名、地址等;二是“仓库”实体集,属性有仓库编号、仓库名、地址等;三是“职工”实体集,属性有职工编号、姓名、性别等。公司与仓库间存在“隶属”联系,每个公司管辖若干仓库,每个仓库只能属于一个公司管辖;仓库与职工间存在“聘用”联系,每个仓库可聘用多个职工,每个职工只能在一个仓库工作,仓库聘用职工有聘期和工资。

试画出E-R图,并在图上注明属性、联系的类型。再转换成关系模式集,并指出每个关系模式的主键和外键。

(2)使用SQL Server SMSS完成以下程序的编写:假设三角形的3条边长分别为a、b和c,使用海伦公式计算三角形的面积。

(3)使用SQL Server SMSS完成以下程序,编写函数实现一元二次方程ax2+bx+c=0求解,为了简化问题,假设b2-4ac>0,即方程有两个不同根的情况。