mysql数据库武洪萍版第四章习题与答案

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.选择题

1.下面哪种数字数据类型不可以存储数据256?(D)

A. bigint

B. int

C. Smallint

D. tinyint

2.下面是有关主键和外键之间的关系描述,正确的是(AC)

A.一个表最多只能有一个主键约束,多个外键约束。

B.一个表中最多只有一个外键约束,一个主键约束。

C.在定义主键外键约束时,应该首先定义主键约束,然后定义外键约束。

D.在定义主键外键约束时,应该首先定义主键约束,然后定义主键约束。

3.下面关于数据库中表的行和列的叙述正确的是(D)

A.表中的行是有序的,列是无序的

B. 表中的列是有序的,行是无序的

C. 表中的行和列都是有序的

D. 表中的行和列都是无序的

4.SQL语言的数据操作语句包括 SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最频繁的语句是(A)

A.SELECT

5.在下列SQL语句中,修改表结构的语句是(A)。

A. ALTER

B. CREATE

C. UPDATE

D. INSERT

6.设有关系R(A,B,C)和S(C,D),与关系代数表达式πA,B,D(σ=(R ∞ S)等价的SQL语句是(B)。

A.SELECT *FROM R,S WHERE =

B.SELECT A,B,D FROM R,S WHERE =

C.SELECT A,B,D FROM R,S WHERE R=S

D.SELECT A,B FROM R WHERE(SELECT D FROM S WHERE =

7.设关系 R(A,B,C) 与SQL语句“SELECT DISTINST A FROM R WHERE B=17”等价的关系代数表达式是(A)

A.πA(σB=17 (R))

B. σB=17 (πA(R))

C. σB=17 (πA. C(R))

D. πA. C(σB=17 (R))

下面第(8)-(12)题,基于“学生-选课-课程”数据库中的3个关系。

S(S#,SNAME,SEX,DEPAPTMENT),主码是S#

C(C#,CNAME,TEACHER),主码是 C#

SC(S#,C#,GRADE),主码是(S#,C#)

8.在下列关于保持数据库完整性的叙述中,哪一个是不正确的?(D)

A.向关系SC 插入元组时,S#和C#都不能是空值(NULL)

B.可以任意删除关系SC中的元组

C.向任何一个关系插入元组时,必须保证该关系主码值得唯一性

D.可以任意删除关系C中的元组

9.查找每个学生的学号、姓名、选修的课程名和成绩,将使用关系(D)

A. 只有 S,SC

B. 只有 SC,C

C. 只有 S,C

D. S,SC,C

10若要查找姓名中第1个字为“王”的学生的学号和姓名,则下面列出的SQL 语句中,哪个(些)是正确的?(B)

Ⅰ. SELECT S#,SNAME FROM S WHERE SNAME=’王%’

Ⅱ. SELECT S#,SNAME FROM S WHERE SNAME LIKE ‘王%’

Ⅲ. SELECT S#,SNAME FROM S WHERE SNAME LIKE’王_’

A.Ⅰ

B.Ⅱ

C.Ⅲ

D.全部

11.若要“查询选修了3门以上课程的学生的学号”,则正确的SQL语句是(B)

A.SELECT S# FROM SC GROUP BY S# WHERE COUNT(*)>3

B.SELECT S# FROM SC GROUP BY S# HAVING COUNT(*)>3

C.SELECT S# FROM SC ORDER BY S# WHERE COUNT(*)>3

D.SELECT S# FROM SC ORDER BY S# HAVING COUNT(*)>3

12.若要查找“由张劲老师执教的数据库课程的平均成绩、最高成绩和最低成绩”,则将使用关系(D)。

A.S和SC

B. SC和C

C. S和C

D. S、SC和 C

下面第(13)-(16)题基于这样的3个表,即学生表S、课程表C和学生选课表SC,它们的关系模式如下。

S(S#,SN,SEX,AGE,DEPT)(学号,姓名,性别,年龄,系别)

C(C#,CN)(课程号,课程名称)

SC(S#,C#,GRADE)(学号,课程号,成绩)

13.检索所有比“王华”年龄大的学生姓名、年龄和性别。下面正确的SELECT 语句是(A)

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>(SELECT AGE WHERE SN=’王华’)

D.SELECT SN,AGE,SEX FROM S WHERE AGE>王华.AGE

14.检索选修课程“C2”的学生中成绩最高的学生的学号。正确的SELECT 语句是(D)。

A.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 IN(SELECT GRADE GORM SC WHERE C#=’C2’)

C.SELECT S# FROM SC WHERE C#=’C2’ AND GRADE NOT IN(SELECT GRADE GORM SC WHERE C#=’C2’)

D.SELECT S# FROM SC WHERE C#=’C2’AND GRADE>=ALL(SELCET GRADE FROM SC WHERE C#=’C2’)

15.检索4门以上课程的学生总成绩(不统计不及格的课程),并要求按总成绩的降序排列出来。正确的 SELECT 语句是(B)

A.SELECT S#,SUM(GRAGE) FROM SC WHERE GRADE>=60 GROUP BY S# ORDER BY S# 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 HAVING COUNT(*)>=4 GROUP BY S# ORDER BY 2

17.数据库见表和表,若职工表的主关键字是职工号,部门表的关键字是部门号,SQL操作(B)不能执行。

A.从职工表中删除行(‘025’,‘王芳’,‘03’,720)

B.将行(‘005’,‘乔兴’,‘04’,720)插入到职工表中

C.将职工号为“001”的工资改为700

相关文档
最新文档