A. DELETE B. DROP C. MODIFY D. ADD 15. 向基本表中增加一个新列后,原有元组在该列上的值是( )。
A.TRUE B.FALSE C.空值 D.不确定 16. 当FROM子句中出现多个基本表或视图时,系统将执行( )操作。
A. 并 B.等值连接 C.自然联结 D.广义笛卡儿积
17. 视图创建完成后,数据字典中存放的是( )
A. 查询语句 B.查询结果 C.视图的定义 D.所引用的基本表的定义
18. 查询中需要统计元组的个数时,应使用( )函数。
A.SUM(列名) B.COUNT(列名) C.COUNT(*) D.AVG(列名)
19. 查询中需要统计某列中值的个数应使用( )函数。
A.SUM(列名) B.COUNT(列名) C.COUNT(*) D.AVG(列名)
20. 两个子查询的结果( )时,可以执行并、交、差操作。 A.结构完全一致 B.结构完全不一致 C.结构部分一致在 D.主码一致
21. 若用如下的SQL语句创建一个student表: CREATE TABLE student( NO CHAR(4) NOT NULL, NAME CHAR(8) NOT NULL, SEX CHAR(2), AGE SMALLINT );
可以插入到student表中的是( )。
A.('1031','曾华',男,23) B.('1031','曾华',NULL,NULL) C.(NULL,'曾华','男',23) D.('1031',NULL,'男',23) 第22题到第24题基于这样的3个表即学生表S、课程表C和学生选课表SC,它们的结构如下:
S(S#,SN,SEX,AGE,DEPT) C(C#,CN)
SC(S#,C#,GRADE)
其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩
22. 检索学生姓名及其所选修课程的课程号和成绩,正确的SELECT语句是( )。 A. SELECT S.SN,SC.C#,SC.GRADE FROM S WHERE S.S#=SC.S#; B. SELECT S.SN,SC.C#,SC.GRADE FROM SC WHERE S.S#=SC.GRADE; C. SELECT S.SN,SC.C#,SC.GRADE FROM S,SC WHERE S.S#=SC.S#;
D. SELECT S.SN,SC.C#,SC.GRADE FROM S,SC;
23. 检索选修课程“C2”的男生中的最高成绩,正确的SELECT语句是( )。 A. SELECT MAX(GRADE) FROM SC
WHERE CN='C2’ AND SEX='男'; B. SELECT MAX(GRADE) FROM SC,C,S WHERE CN=‘C2‘ AND SEX=’男‘; C. SELECT MAX(GRADE) FROM SC,S
WHERE SC.C#=C.C# AND CN=’C2‘ AND SEX=’男‘; D. SELECT MAX(GRADE) FROM SC,C,S
WHERE SC.C#=C.C# AND SC.S#=S.S# AND CN='C2' AND SEX='男'; 24. 检索选修4门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的SELECT语句是( )。 A. SELECT S#,SUM(GRADE) FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY 2 DESC HAVING COUNT(*)>=4 B. SELECT S#,SUM(GRADE) FROM SC
WHERE GRADE>=60 GROUP BY S#
HAVING COUNT(*)>=4 ORDER BY 2 DESC
C. SELECT S#,SUM(GRADE) FROM SC
WHERE GRADE>=60 HAVING COUNT(*)>=4 GROUP BY S# ORDER BY 2 DESC
D. SELECT S#,SUM(GRADE) FROM SC
WHERE GRADE>=60 ORDER BY 2 DESC GROUP BY S#
HAVING COUNT(*)>=4 二、多选题
1. SQL具有( )功能。
A.关系规范化 B.数据定义 C.数据操纵 D.数据控制 2. SQL语言的使用方法有( )。
A.交互式SQL B.解释式SQL C.嵌入式SQL D.多用户SQL 3. 下列命令中属于SQL语言中数据定义功能的语句有( )。 A. CREATE B. SELECT C. DROP D. ALTER 4. 在SQL语言中可以用来表示“10
5. 使用聚合函数进行统计时,忽略空值的有( )。
A.SUM B.MAX C.COUNT D.AVG 6. 在SELECT语句的FROM子句中允许出现( )。
A. 列名 B.基本表名 C.视图名 D.表达式 7. 某查询语句中有“%田_ _”语句,在查询结果中有可能含有( )。 A.张田 B.陈力田 C.田华 D.刘田耕 8. 在CREATE TABLE语句中实现完整性约束的子句有( )。
A.NOT NULL B.PRIMARY KEY C.FOREIGN KEY D.CHECK 9. 已知基本表S对应的关系模式为(S#,SNAME,AGE),在下列SELECT的子句中,正确的是( )。
A.SELECT S#,AVG(AGE) B.SELECT DISTINCT AGE C.SELECT SNAME 姓名 D.SELECT AGE>20
10. 对于下列语句TeacherNo INT NOT NULL UNIQUE,正确的描述是( )。 A. TeacherNo是主码 B. TeacherNo不能为空
C. TeacherNo的值可以是“王大力” D. 每一个TeacherNo必须是惟一的
三、填空题
1. 在SQL语言中,创建基本表应使用( ) 语句,创建视图应使用( ) 语句,创建索引应使用( ) 语句。
2. 在SQL语言中,DELETE命令用来删除表中的记录, ( )命令用来删除表。UPDATE命令用来更新表的记录值, ( )语句用来更新表结构。 3. 使用INSERT语句插入记录时,有两种形式:一是使用VALUES子句,一次只能插入一行;另一种是使用( ) ,一次可插入多行。
4. 在SQL中定义视图时,需要用关键字( ) 连接子查询来完成。 5. 设有如下关系模式R、S和T: R(BH,XM,XB,DWH) S(DWH,DWM)
T(BH,XM,XB,DWH)
(1) 实现R∪T的SQL语句是: 。 (2) 实现
σ
DWH=‘100’(R)的SQL语句是: 。
(3) 实现 ΠXM,XB(R)的SQL语句是: 。
(4) 实现 ΠXM,DWH( σXB='女'(R)) 的SQL语句是 :。 (5) 实现R×S的SQL语句是: 。
(6) 实现 ΠXM,XB,DWM( σXB='男'(R∞ S))的SQL语句是: 。 6. 有如下关系表R:
R(NO,NAME,SEX,AGE,CLASS) 主码是NO
其中NO为学号,NAME为姓名,SEX为性别,AGE为年龄,CLASS为班号。写出实现下列功能的SQL语句。
(1) 插入一个记录(25,"李明",21,NULL,"95031"); 。 (2) 将学号为10的学生姓名改为"王华"; 。 (3) 删除姓"王"的学生记录; 。
(4) 在表中增加一列DEPT,类型为CHAR(10)。 (5) 将全体学生的年龄增加一岁。 四、判断题
1.原则上讲,两个不同的对象所具有的属性值不能相同,但在给定的关系中的元组可以是完全相同的。( )
2.在关系模型中每个元组的分量不能是结构、集合、数组等复合类型。( ) 3.学生李明同时修财经和电子商务的双学位、有如下关系:
StudentNo 20001101 20001101 StudentName 李明 李明 Age Dept 18 财经系 18 财经系 在该关系中,学号是键码。( )
4.在R和S关系之间进行并、交、差运算,R和S的模式必须具有:相同的属性集,属性顺序相同。( )
5.对于联系与反向联系,常用的方法是将其独立出来作为连接关系。( )
6.数据逻辑中的查询是一个或多个规则的聚集。如果规则的头部有多个关系,则只有一个关系是查询结果,其他关系在查询过程中起辅助作用。( ) 五、简答题
1.举例说明关系参照完整性的含义。
2.叙述等值连接与自然连接的区别和联系。 3.设有如图所示的关系R,S,计算 (1) R1=R-S (2) R2=R∪S (3) R3=R∩S (4) R4= ííA,B(σ
B=b1 (R))
R S
A B a1 b1 a1 b2 a2 b2 C c1 c2 c1 A B C a1 b2 b2 a2 b2 c1 4.设有如图所示的三个关系S、C和SC。将下列关系代数表达式用汉语表示出来,并求其结
果。 S C
学号 姓名 年龄 性别 籍贯 98601 王晓燕 20 女 北京 98602 李波 23 男 上海 课程号 课程名 教师姓名 办公室 C601 高等数学 周振兴 416 C602 数据结构 刘建平 415 98603 陈志坚 21 98604 张兵 20 98605 张兵 22 男 长沙 男 上海 女 武汉 C603 C604 操作系统 刘建平 编译原理 王志伟 415 415 SC
学号 98601 98601 98601 98601 98602 98603 98603 98603 98604 98604 98605 98605 课程号 成绩 C601 90 C602 90 C603 85 C604 87 C601 90 C601 75 C602 70 C604 56 C601 90 C604 85 C601 95 C603 80
5.设有如图所示的关系S、SC和C,试用关系代数表达式表示下列查询语句: S C SC
S# 1 2 5 2 5 5 C# k1 k1 k1 k5 k5 k8 S# SNAME AGE SEX 1 李强 23 男 2 刘丽 22 女 5 张友 22 男 C# k1 k5 k8 CNAME TEACHER C语言 王华 数据库原理 程军 编译原理 程军 GRADE 83 85 92 90 84 80 (1).检索”程军”老师所授课的课程号(C#)和课程名(CNAME)。 (2).检索年龄大于21的男学生学号(S#)和姓名(SNAME)。
(3).检索至少选修”程军”老师所授全部课程的学生姓名(SNAME)。 (4).检索”李强”同学不学课程的课程号(C#)。 (5).检索至少选修两门课程的课程号(S#)。