数据库笔试题 - 答案

XXXX感谢您对本套试题的回答,首先请您填写上您的姓名(____________),本套试题将作为XXXX入职的参考,多谢您的重视。本套试题分三部分:填空题(10分)、选择题(20分),SQL基础题(30)、简答题(20)、综合题(30)。时间60分钟,满分110分。

一、填空题(每题2分,共10分)

1. 索引字段值不唯一,应该使用的索引类型为( 普通索引 )

2. 只有满足联接条件的记录才包含在查询结果中,这种联接为( 内联接 ) 3. E-R模型的组成包括那些元素( 实体 )( 属性 )( 关系 )

4. 事务所具有的特性有( 原子性 )( 一致性 )( 隔离性 )( 持久性 ) 5、结构化程序设计的三种基本逻辑结构是(顺序结构),(选择结构),(循环结构)。 二、选择提 (每题1分,共20分)

1、在删除整表数据,同时保留表结构时,采用( C )的效率比( A )要高;

A. delete

B. drop table C. truncate Table

2、数据库管理系统中,能实现对数据库中的数据进行插入/修改/删除的功能称为(C);

A.数据定义功能 B.数据管理功能 C.数据操作功能 D.数据控制功能 3、24、在关系模型中,实现\关系中不允许出现相同的元组\的约束是通过(B)。

A:候选键 B:主键 C:外键 D:超键 4、数据库管理系统DBMS S是 ( D);

A.信息管理的应用软件 B.数据库系统+应用程序 C.管理中的数据库 D.管理数据的软件

5、关系数据库中,实现表与表之间的联系是通过 (B)。 A、实体完整性规 B、参照完整性规则 C、用户自定义的完整性 D、值域

6、设有部门和职员两个实体,每个职员只能属于一个部门,一个部门可以有多名职员,则部门与职员实体之间的联系类型(B)。 A、m:n B、1:m C、m:1 D、1:1

7、设有课程和学生两个实体,每个学生可以选修多个课程,一个课程可以有多名学生选修,则课程与学生实体之间的联系类型( A )。 A、m:n B、1:m C、m:1 D、1:1

8、如果一个班只能有一个班长,而且一个班长不能同时担任其它班的班长,班级和班长两个实体之间的关系属于(D)。 A、m:n B、1:m C、m:1 D、1:1 9、索引字段值不唯一,应该选择的索引类型为( B )。

A:主索引 B:普通索引 C:候选索引 D:唯一索引

10、如果指定参照完整性的删除规则为\级联\,则当删除父表中的记录时( C )。 A:系统自动备份父表中被删除记录到一个新表中 B:若子表中有相关记录,则禁止删除父表中记录

-可编辑修改-

C:会自动删除子表中所有相关记录

D:不作参照完整性检查,删除父表记录与子表无关

11、设有两个数据库表,父表和子表之间是一对多的联系,为控制子表和父表的关联,可以设置\参照完整性规则\,为此要求这两个表( B )。

A:在父表连接字段上建立普通索引,在子表连接字段上建立主索引 B:在父表连接字段上建立主索引,在子表连接字段上建立普通索引

C:在父表连接字段上不需要建立任何索引,在子表连接字段上建立普通索引 D:在父表和子表的连接字段上都要建立主索引

12、把实体-联系模型转换为关系模型时,实体之间多对多联系在模型中是通过(C)_。 A:建立新的属性来实现 B:建立新的关键字来实现 C:建立新的关系来实现 D:建立新的实体来实现

13、用树形结构来表示实体之间联系的模型称之为( B)

A. 关系模型 B. 层次模型 C.网状模型 D. 数据模型 14、SQL语句中修改表结构的命令是( C )_。

A:MODIFY TABLE B:MODIFY STRUCTURE C:ALTER TABLE D:ALTER STRUCTURE

15 、用SQL语句建立表时将属性定义为主关键字,应使用短语( B )。

A:CHECK B:PRIMARY KEY C:FREE D:UNIQUE 16、SQL实现分组查询的短语是 ( B )。

A:ORDER BY B:GROUP BY C:HAVING D:ASC 17、数据库系统中采用封锁技术的目的是为了保证( A)

A. 数据的一致性 B. 数据的可靠性 C. 数据的完整性 D. 数据的安全性

18、在数据库设计中,表示用户业务流程的常用方法是(A)

A. DFD B. 程序流程图 C. E-R图 D. 数据结构图

19、为\歌手\表增加一个字段\最后得分\的 SQL 语句是(A)。 A)ALTER TABLE 歌手 ADD 最后得分 F(6,2) B)ALTER DBF 歌手 ADD 最后得分 F 6,2

C)CHANGE TABLE 歌手 ADD 最后得分 F(6,2)

D) CHANGE TABLE 学院 INSERT 最后得分

20、插入一条记录到\评分\表中,歌手号、分数和评委号分别是\、9.9 和\, 正确的 SQL 语句是(C)。

A)INSERT VALUES(\,9.9, \)INTO; 评分(歌手号,分数,评委号)

B)INSERT TO 评分(歌手号,分数,评委号); VALUES(\,9.9,\)

C)INSERT INTO 评分(歌手号,分数,评委号); VALUES(\)

D)INSERT VALUES(\)TO; 评分(歌手号,分数,评委号)

三、SQL基础题( 共30分)

-可编辑修改-

设教学数据库Education有三个关系:

学生关系S(SNO,SNAME,AGE,SEX,SDEPT);学习关系SC(SNO,CNO,GRADE);课程关系C(CNO,CNAME,CDEPT,TNAME) 查询问题:

(1)检索计算机系的全体学生的学号,姓名和性别; 3分 (2)检索学习课程号为C2的学生学号与姓名; 3分 (3)检索选修课程名为“DS”的学生学号与姓名; 3分 (4)检索选修课程号为C2或C4的学生学号; 3分 (5)检索至少选修课程号为C2和C4的学生学号; 3分 (6)检索不学C2课的学生姓名和年龄; 5分 (7)检索学习全部课程的学生姓名; 5分 (8)查询所学课程包含学生S3所学课程的学生学号。 5分

(1)检索计算机系的全体学生的学号,姓名和性别; SELECT Sno,Sname,Sex FROM S

WHERE Sdept =’CS’;

(2)检索学习课程号为C2的学生学号与姓名;

1.SELECT Sno,Sname FROM S WHERE Sno IN ( SELECT Sno FROM SC WHERE Cno=‘C2’) 2.SELECT S.Sno,Sname FROM S,SC WHERE S.Sno=SC.Sno AND SC.Cno=‘C2’;

(3)检索选修课程名为“DS”的学生学号与姓名

本查询涉及到学号、姓名和课程名三个属性,分别存放在S和C表中,但S和C表没有直接联系,必须通过SC表建立它们二者的联系。 C → SC → S 基本思路:

(1)首先在C表中找出“DS”课程的课程号Cno;

(2)然后在SC表中找出Cno等于第一步给出的Cno 集合中的某个元素Cno;

(3)最后在S关系中选出Sno等于第二步中Sno 集合中某个元素的元组,取出Sno 和Sname送入结果表列。

SELECT Sno,Sname FROM S

WHERE Sno IN(SELECT Sno FROM SC WHERE Cno IN (SELECT Cno FROM C WHERE Cname=‘DS’));

(4)检索选修课程号为C2或C4的学生学号; SELECT Sno FROM SC

WHERE Cno=‘C2’ OR Cno=‘C4’;

(5)检索至少选修课程号为C2和C4的学生学号;

SELECT Sno

FROM SC X,SC Y

WHERE X.Sno=Y.Sno AND X.Cno=‘C2’ AND Y.Cno=‘C4’ ;

(6)检索不学C2课的学生姓名和年龄;

A.SELECT Sname FROM S WHERE Sno NOT IN ( SELECT Sn FROM SC WHERE Cno=‘C2’); 或者

B.SELECT Sname FROM S WHERE NOT EXISTS ( SELECT * FROM SC WHERE SC.Sno=S.Sno AND Cno=‘C2’);

-可编辑修改-

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4