数据库3、4、5章作业

做以记录与分享

第3,4,5章作业.xls

题量: 38 满分: 100

一. 单选题(共38题)

1. (单选题)关于视图的属性列有如下说法,正确的说法是( )。

  • A. 组成视图的属性列名或者全部省略或者全部指定,别无选择
  • B. 组成视图的属性列名应该全部指定
  • C. 组成视图的属性列名应该全部省略
  • D. 组成视图的属性列名可以省略一部分或者指定一部分,其他隐含在子查询中

我的答案: A :组成视图的属性列名或者全部省略或者全部指定,别无选择;

2. (单选题)在关系数据库中,通常将能唯一标识元组的属性或最小属性组称为( )。

  • A. 索引
  • B. 主键
  • C. 字段
  • D. 标记

我的答案: B :主键;

3. (单选题)从SQL数据库的体系结构来看,用户可以用SQL语言的语句,对( )和基本表进行查询等操作。

  • A. 存储文件
  • B. 光标
  • C. 库文件
  • D. 视图

我的答案: D :视图;

4. (单选题)下列关于子查询的说法不正确的是( )。

  • A. 子查询总是在外部查询之后进行
  • B. 子查询可以嵌套多层
  • C. 子查询的结果是包含零个或多个元组的集合
  • D. 子查询可以向外部查询提供查询的条件值

我的答案: A :子查询总是在外部查询之后进行;

5. (单选题)在视图上一定不能完成的操作是( )。

  • A. 更新数据
  • B. 在视图上定义新的视图
  • C. 在视图上定义新的基本表
  • D. 查询数据

我的答案: C :在视图上定义新的基本表;

6. (单选题)设关系模式SCG(S#,C#,Grade)中,S#为学生学号,C#为课程号,Grade为某学号学生某号课程的考试成绩。要查询每门课程的平均成绩,且要求查询的结果按课程号降序排列,则用SQL语句应为( )。

  • A. Select C#, AVG(Grade) from SCG Group by C# Order by C# Desc
  • B. Select C#, AVG(Grade) from SCG Group by Grade Order by Desc C#
  • C. Select C#, AVG(Grade) from SCG Group by C# Order by Desc C#
  • D. Select C#, AVG(Grade) from SCG Group by Grade Order by C# Desc

我的答案: A :Select C#, AVG(Grade) from SCG Group by C# Order by C# Desc;

7. (单选题)请判断“如果新的视图是建立在老的视图基础上的,那么当老的视图被删除时,建立在它的基础上的新的视图也被删除”。

  • A. 错误
  • B. 正确

我的答案: A :错误;

8. (单选题)学生表S(S#,SN,SEX,AGE,DEPT)、课程表C(C#,CN)和学生选课表SC(S#,C#,GRADE),其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩(为tinyint类型)。检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT语句是( )。

  • A. SELECT S# FROM SC WHERE C#=’C2’ AND GRADE IN (SELECT GRADE FROM SC WHERE C#=’C2’)
  • B. SELECT S# FROM SC WHERE C#=’C2’ AND GRADE= (SELECT max(GRADE) FROM SC WHERE C#=’C2’)
  • C. SELECT S# FROM SC WHERE C#=’C2’ AND GRADE NOT IN (SELECT GRADE FROM SC WHERE C#=’C2’)
  • D. SELECT S# FROM SC WHERE C#=’C2’ AND GRADE>= (SELECT GRADE FROM SC WHERE C#=’C2’)

我的答案: B :SELECT S# FROM SC WHERE C#=’C2’ AND GRADE= (SELECT max(GRADE) FROM SC WHERE C#=’C2’);

9. (单选题)SQL语言是( )语言。

  • A. 层次数据库
  • B. 网络数据库
  • C. 关系数据库
  • D. 非数据库

我的答案: C :关系数据库;

10. (单选题)在分组查询中,要去掉不满足条件的分组,则( )。

  • A. 先使用WHERE子句,再使用HAVING子句
  • B. 使用HAVING子句
  • C. 使用WHERE子句
  • D. 先使用HAVING子句,再使用WHERE子句

我的答案: B :使用HAVING子句;

11. (单选题)关系型数据库语言SQL基本的使用方式有2种,一种方式为单独使用,此时被称为( )语言。

  • A. 交互式
  • B. 宿主
  • C. 解释式
  • D. 嵌入式

我的答案: A :交互式;

12. (单选题)假设GRADE是某关系中的一个属性,其值可以为NULL。在SQL中,下列涉及空值的操作,不正确的是( )。

  • A. GRADE IS NOT NULL
  • B. NOT (GRADE IS NULL)
  • C. GRADE=NULL
  • D. GRADE IS NULL

我的答案: C :GRADE=NULL;

13. (单选题)如果表中学生的学号信息长度固定,则采用( )类型最为合适。

  • A. varchar
  • B. int
  • C. char
  • D. tinyint

我的答案: C :char;

14. (单选题)关于WHERE子句说法正确的是( )。

  • A. 它是条件子句,不能再包含查询子句
  • B. 在查询语句中,不是必须包括WHERE子句
  • C. WHERE子句中可以有统计函数
  • D. WHERE子句还可以嵌套查询子句,但嵌套层次不能超过3层

我的答案: B :在查询语句中,不是必须包括WHERE子句;

15. (单选题)若用SQL语句创建一个student表:CREATE TABLE student ( NO Char(4) NOT NULL, NAME Char(8) NOT NULL, SEX Char(2), AGE tinyint )。可以插入到student表中的是( )。

  • A. (NULL,’曾华’,’男’,’23’)
  • B. (’1031’,’曾华’,’男’,’23’)
  • C. (’1031’,’曾华’,NULL,NULL)
  • D. (’1031’,NULL,’男’,23)

我的答案: C :(’1031’,’曾华’,NULL,NULL);

16. (单选题)学生表S(S#,SN,SEX,AGE,DEPT)、课程表C(C#,CN)和学生选课表SC(S#,C#,GRADE),其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩(为tinyint类型)。检索所有比“王华”年龄大的学生姓名、年龄和性别。正确的SELECT语句是( )。

  • A. SELECT SN, AGE, SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=’王华’)
  • B. SELECT SN, AGE, SEX FROM S WHERE SN=’王华’
  • C. SELECT SN, AGE, SEX FROM S WHERE AGE>王华.AGE
  • D. SELECT SN, AGE, SEX FROM S WHERE AGE>(SELECT AGE WHERE SN=’王华’)

我的答案: A :SELECT SN, AGE, SEX FROM S WHERE AGE>(SELECT AGE FROM S WHERE SN=’王华’);

17. (单选题)SQL语言的语句中,最核心的语句是( )。

  • A. 插入语句
  • B. 创建语句
  • C. 查询语句
  • D. 删除语句

我的答案: C :查询语句;

18. (单选题)若要删除数据库中已存在的关系Student,可用( )。

  • A. DROP Student
  • B. DELETE Student
  • C. DELETE TABLE Student
  • D. DROP TABLE Student

我的答案: D :DROP TABLE Student;

19. (单选题)设关系数据库中一个关系Student(Sno CHAR(6) NOT NULL UNIQUE, Sname VARCHAR(8), Grade float),若要在Student中增加一列CName(课程名),可用( )。

  • A. ALTER TABLE Student (ADD CName CHAR(8))
  • B. ALTER TABLE Student ADD (CName CHAR(8))
  • C. ADD TABLE Student(CName CHAR(8))
  • D. ADD TABLE Student ALTER (CName CHAR(8))

我的答案: B :ALTER TABLE Student ADD (CName CHAR(8));

20. (单选题)SQL语言中,实现数据检索的语句是( )。

  • A. UPDATE
  • B. SELECT
  • C. INSERT
  • D. DELETE

我的答案: B :SELECT;

21. (单选题)若某非主属性的值暂时不能确定也允许将其存入数据库,可将未定值用( )来代替。

  • A. ANY
  • B. ALL
  • C. NULL
  • D. NOT NULL

我的答案: C :NULL;

22. (单选题)视图创建完毕后,数据字典中存放的是( )。

  • A. 所应用的基本表的定义
  • B. 视图定义
  • C. 查询结果
  • D. 查询语句

我的答案: B :视图定义;

23. (单选题)学生表S(S#,SN,SEX,AGE,DEPT)、课程表C(C#,CN)和学生选课表SC(S#,C#,GRADE),其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩(为tinyint类型)。检索学生姓名及其所选修课程的课程号和成绩。正确的SELECT语句是( )。

  • A. SELECT S.SN, SC.C#, SC.GRADE FROM SC WHERE S.S#=SC.GRADE
  • B. SELECT S.SN, SC.C#, SC.GRADE FROM S JOIN SC ON S.S#=SC.S#
  • C. SELECT S.SN, SC.C#, SC.GRADE FROM S WHERE S.S#=SC.S#
  • D. SELECT S.SN, SC.C#, SC.GRADE FROM S, SC

我的答案: B :SELECT S.SN, SC.C#, SC.GRADE FROM S JOIN SC ON S.S#=SC.S#;

24. (单选题)SELECT语句中与HAVING子句同时使用的是( )子句。

  • A. GROUP BY
  • B. LIMIT
  • C. ORDER BY
  • D. WHERE

我的答案: A :GROUP BY;

25. (单选题)在关系数据库中,只存放视图的( )而不存放视图( ),视图是一个( )。

  • A. 定义;对应的数据;实表
  • B. 对应的数据;定义;实表
  • C. 对应的数据;定义;虚表
  • D. 定义;对应的数据;虚表

我的答案: D :定义;对应的数据;虚表;

26. (单选题)在基本SQL语言中,下面不能实现的是( )。

  • A. 修改基本表结构
  • B. 定义基本表
  • C. 并发控制
  • D. 查询视图或基本表

我的答案: C :并发控制;

27. (单选题)关于视图,下列说法正确的是( )。

  • A. 属于外模式
  • B. 属于概念模式
  • C. 属于内模式
  • D. 是基本表

我的答案: A :属于外模式;

28. (单选题)学生表S(S#,SN,SEX,AGE,DEPT)、课程表C(C#,CN)和学生选课表SC(S#,C#,GRADE),其中:S#为学号,SN为姓名,SEX为性别,AGE为年龄,DEPT为系别,C#为课程号,CN为课程名,GRADE为成绩(为tinyint类型)。检索学生姓名的选课情况(包括未选课)。正确的SELECT语句是( )。

  • A. SELECT S.SN, SC.C# FROM S RIGHT JOIN SC ON S.S#=SC.S#
  • B. SELECT S.SN, SC.C# FROM SC WHERE S.S#=SC.GRADE
  • C. SELECT S.SN, SC.C# FROM S JOIN SC ON S.S#=SC.S#
  • D. SELECT S.SN, SC.C# FROM S LEFT JOIN SC ON S.S#=SC.S#

我的答案: D :SELECT S.SN, SC.C# FROM S LEFT JOIN SC ON S.S#=SC.S#;

29. (单选题)假定学生关系是S(S#,SNAME,SEX,AGE),课程关系是C(C#,CNAME,TEACHER),学生选课关系是SC(S#,C#,GRADE)。要查找选修“COMPUTER”课程的“女”学生姓名,将涉及到关系( )。

  • A. S
  • B. S,SC
  • C. S,C,SC
  • D. SC,C

我的答案: C :S,C,SC;

30. (单选题)用SQL语言定义基本表时,下列()类型必需定义长度。

  • A. text
  • B. varchar
  • C. float
  • D. int

我的答案: B :varchar;

31. (单选题)设关系模式SCG(S#,C#,Grade)中,S#为学生学号,C#为课程号,Grade为某学号学生某号课程的考试成绩。若要把“201721110001学生的C05号课程85分”插入SCG中,则可用( )。

  • A. INSERT INTO SCG VALUES ('201721110001','C05',85)
  • B. ALTER SCG ADD VALUES ('201721110001','C05',85)
  • C. ADD INTO SCG VALUES ('201721110001','C05',85)
  • D. UPDATE SCG ADD VALUES ('201721110001','C05',85)

我的答案: A :INSERT INTO SCG VALUES ('201721110001','C05',85);

32. (单选题)SELECT语句执行的结果是( )。

  • A. 表
  • B. 视图
  • C. 数据项
  • D. 元组

我的答案: A :表;

33. (单选题)WHERE子句的条件表达式中,可以匹配单个字符的通配符和0个到多个字符的通配符分别是( )。

  • A. ?和%
  • B. _和*
  • C. _和%
  • D. ?和*

我的答案: C :_和%;

34. (单选题)在下列的( )情况下必须明确指定组成视图的所有属性列名。(1)某个目标列不是单纯的属性名,而是集函数或列表达式;(2)多表连接时选出了几个同名列作为视图的字段;(3)需要在视图中为某个列启用新的更合适的名字。

  • A. (2)(3)
  • B. (1)(2)(3)
  • C. (1)(3)
  • D. (1)(2)

我的答案: B :(1)(2)(3);

35. (单选题)设关系模式SCG(S#,C#,Grade)中,S#为学生学号,C#为课程号,Grade为某学号学生某号课程的考试成绩。若要把“201721110001学生的C05号课程改为85分”,则可用( )。

  • A. UPDATE Grade=85 Where S#='201721110001' AND C#='C05'
  • B. ALTER Grade=85 Where S#='201721110001' AND C#='C05'
  • C. UPDATE SCG SET Grade=85 Where S#='201721110001' AND C#='C05'
  • D. ALTER SCG SET Grade=85 Where S#='201721110001' AND C#='C05'

我的答案: C :UPDATE SCG SET Grade=85 Where S#='201721110001' AND C#='C05';

36. (单选题)“年龄在18-25之间”这种约束属于数据库系统的( )措施。

  • A. 隔离性
  • B. 一致性
  • C. 完整性
  • D. 原子性

我的答案: C :完整性;

37. (单选题)SQL语言是( )的语言,易学习。

  • A. 导航式
  • B. 非过程化
  • C. 格式化
  • D. 过程化

我的答案: B :非过程化;

38. (单选题)下列SQL语句中,修改表结构的是( )。

  • A. INSERT
  • B. UPDATE
  • C. ALTER
  • D. CREATE

我的答案: C :ALTER;

你可能感兴趣的:(#,数据库习题专栏,数据库,oracle)