数据库原理与应用教程期末考试试题与答案_第1页
数据库原理与应用教程期末考试试题与答案_第2页
数据库原理与应用教程期末考试试题与答案_第3页
数据库原理与应用教程期末考试试题与答案_第4页
数据库原理与应用教程期末考试试题与答案_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库原理与应用教程-SQLServer

期末测试题与答案(一)

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

1.数据库系统的核心是。

2.在关系模型中,实体以及实体间的联系都是用来表示的。

3.设关系模型R(A,B,C),F是R上的函数依赖集,F={A-B,C-B},则R的候选码为。

4.层次模型用“树结构”来表示数据之间的联系,网状模型用“”来表示数据之间的联系。

5.SQLServer2005中,一个简单的数据库可以只有一个______文件和一个日志文件。6.聚集

索引和非聚集索引的存储结构都采用索引结构。

7.一个事务必须具有的四个属性是原子性、一致性、和持久性。

8.在T-SQL中,查询表中数据时,可用_________关键字滤掉重复行。

9.调用标量函数时必须提供至少由两部分组成的名称即.函数名。

10.触发器是当数据库服务器中发生数据操作语言事件时会自动执行的存储过程。

二、选择题(每小题1分,共20分)

1.数据管理的发展不包括下面哪个阶段()

(A)文件系统(B)数据库系统

(C)人工管理(D)统一管理

2.一个学生可以同时借阅多本书,一本书只能由一个学生借阅,学生和图书之间是什么样的联系

()

(A)一对一(B)一对多

(C)多对多(D)以上全不是

3.如果事务1将数据库中的A值从200改为300,事务2读A值为300,事务1又将刚才的操作

撤销,A值恢复为200,那么事务2读取了“脏”数据。这种情况是由于数据库保护中的那方面不当

而引起的()

(A)并发控制(B)完整性约束

(C)安全性控制(D)数据库的恢复

4.在关系模型中,“元组”是指()

(A)表中的一行(B)表中的一列

(C)表中的一个数据(D)表中的一个成分

5.有学生、选修和课程三个关系,学生S(学号,姓名,性别....),课程C(课程号,课程名),

选修SC(学号,课程号,成绩)。想查询选修2号课程的学生的学号和姓名,则关系运算式应写成

()

(A)”学号(。课程号=2(S8SC))(B)”学号,姓和课程号.2(刈

(C)n学号,姓式O课程号=2(S8SC))(D)。课程号.2(II学号.姓式S8SC))

6.规定关系的所有主属性都不能取空值,是用来实现哪一类完整性约束()

(A)实体完整性(B)属性值的约束

1

(C)参照完整性(D)用户定义完整性

7.学生关系(学号,姓名,性别,年龄,系号,系名)中,“系名”对主关键字“学号”的函数依赖是

()

(A)完全函数依赖(B)部分函数依赖

(C)传递函数依赖(D)平凡函数依赖

8.在一个关系中,所有字段都是不可分的,给定一个关键字,则可以在这个数据表中唯一确定一

条记录,则这个关系一定满足INF、2NF和3NF中的()

(A)1NF(B)1NF和2NF

(C)1NF、2NF和3NF(D)2NF和3NF

9.有关系R和S,关系代数运算RCS等价于()

(A)S-(R-S)(B)R-(R-S)

(C)R-S(D)S-R

10.有学生、选修和课程三个关系,S(学号,姓名,性别,年龄),C(课程号,课程名),SC(学

号,课程号,成绩)。以下选项中外码是()

(A)S.学号(B)SC.学号(C)C.课程号(D)SC.成绩

11.要想用T-SQL语句从学生表中查询学号的前四个字符为2)04”第五个字符任意,后三个字符为

“一05”的学生,条件表达式为()

(A)学号LIKE42004%-055(B)学号=,2004%-05'

(C)学号LIKE42004_-055(D)学号=2004-055

12.已知三个关系:

S(学号,姓名,性别)

C(课程编号,课程名称,学时)

SC(学号,课程编号,分数)

若要查询所有选了课的学生的学号和姓名,下列语句正确的是()

(A)select学号,姓名fromsWHERE学号in(select*fromsc)

(B)select学号,姓名froms

WHEREin(select*fromscwheres.学号=sc.学号)

(C)select学号,姓名froms

WHERE学号exists(select*fromscwheres.学号=sc.学号)

(D)select学号,姓名froms

WHEREexists(select*fromscwheres.学号=sc.学号)

13.SQL语句中删除表的命令是()

(A)DELETETABLE(B)DELETEDBF

(C)DROPTABLE(D)DROPDBF

14.如果课程表Course是使用以下SQL语句创建的:CREATETABLECourse(CnoCHAR(2)notnull,

CnameCHAR(20),CfenINT);下面的SQL语句中可以正确执行的是()

(A)INSERTINTOCourse(Cno,Cname,Cfen)VALUES(C2,"数据库",3)

(B)INSERTINTOCourse(Cno,Cmme,Cfen)V\LUES("C2","数据库","2")

(C)INSERTINTOCourse(Cname,Cfen)YVLUES("数据库",3)

(D)INSERTINTOCourse(Cno,Cname)V\LUES('C21数据库,)

15.已知三个关系:

2

S(SNO,NAME,SEX,CLASS);C(CNO,CNAME,TIME);

SC(SNO,CNO,DEGREE)

若要查询统计每门课各班的平均成绩和每门课的平均成绩以及总的平均成绩,下列语句正确的是

()

(A)selectclass,cname,avg(degree)as平均分froms,sc,cwheres.sno=sc.snoandc.cno=o

groupbys.class,c.cnamewithrollup

(B)selectclass,cname,avg(degree)as平均分froms,sc,cwheres.sno=sc.snoandc.eno=sc.eno

groupbys.class,c.cnamewithcube

(C)selectclass,cname,avg(degree)as平均分froms,sc,cwheres.sno=sc.snoandc.eno=sc.

enogroupbyc.cname,s.classwithcube

(D)selectclass,cname,avg(degree)as平均分froms,sc,cwheres.sno=sc.snoandc.eno=sc.

enogroupbyc.cname,s.classwithrollup

16.当where子句、聚合函数、groupby子句和having子句同时出现在一个查询中时,最后执行的

是()

(A)聚合函数(B)where子句

(C)groupby子句(D)having子句

17.授予userl用户修改st表中的“姓名”字段的权限,应使用的SQL语句是()

(A)GRANTUPDATE姓名)ONstTABLETOuserl

(B)GRANTUPDATE姓名)ONTABLEstTOuserl

(C)GRANTMODIFY(姓名)ONstTABLETOuserl

(D)GRANTMODIFY(姓名)ONTABLEstTOuserl

18.SQLServer2005中,主数据库文件的扩展名为()

(A).mdf(B).dbf(C).ldf(D).ndf

19.显式事务和隐式事务都需要用什么语句来提交和回滚()

(A)ENDTRANSACTION和ROLLBACKTRANSACTION

(B)COMMITTRANSACTION和ROLLBACKTRANSACTION

(C)SAVETRANSACTION和ROLLUPTRANSACTION

(D)COMMITTRANSACTION和ROLLUPTRANSACTION

20.下列哪种情况不适合创建索引()

(A)表中的主键列(B)只有两个或若干个值的列

(C)需要强制实施唯一性的列(D)连接中频繁使用的列

三、名词解释(每小题3分,共15分)

1.数据库

2.候选关键字

3.视图

4.游标

5.事务

四、简答题(每小题5分,共25分)

3

1.创建索引的必要性和作用是什么?

2.简述主键约束和唯一性约束的异、同点。

3.简述T-SQL语言的特点。

4.简述存储过程的优点。

5.简述死锁及其解决办法。

五、综合题(每小题10分,共30分)

1•把下面用关系表示的实体、实体与实体之间的联系,用E-R图表示出来,要求在图中表示联系

的类型(1:1、l:n、m:n),并写出相应的关系模式和各关系的主关键字。

实体1:学生(学号,姓名,性别,年龄);

实体2:课程(课程号,课程名,学分);

实体1与实体2的联系:学习(学号,课程号,成绩)。

注:一个学生可以选多门课程,一门课程也可以被多个学生选,学生选课后有成绩。

2.设有关系模式R(运动员编号,姓名,性另U,班级,班主任,项目号,项目名,成绩)如果规定:每名运动员

只能代表一个班级参加比赛,每个班级只能有一个班主任;每名运动员可参加多个项目,每个比赛

项目也可由多名运动员参加;每个项目只能有一个项目名;每名运动员参加一个项目只能有一个成

绩。根据上述语义,回答下列问题:

(1)写出关系模式R的候选码;

(2)R最高属于第几范式?说明理由;

(3)若R不是3NF,将其分解为3NFo

3.设有一个学生-课程数据库,包括学生关系Student、课程关系Course、选修关系SC,如下图所

示:

Student

学号姓名性别年龄所在系

95001李勇男20CS

95002刘晨女19IS

95003王敏女18MA

Course

课程号课程名学分

1数据库3

2数学3

3信息系统4

4操作系统3

SC

学号课程号成绩

95001192

95001285

4

95001388

95002290

95002380

根据以上所定义的三张基表写出相应的SQL语句:

(1)查询年龄在20以下的女生的姓名、系别、年龄。

(2)查询每个学生的姓名及其选修课程的课程名。

(3)创建一个视图,包括每个系的学生所选的每门课程的平均成绩,而且只选取平均成绩为80分

以上的。

(4)查询学号为95013的学生的各科成绩,如果没有这个学生的成绩,就显示,此学生无成绩”。

期末测试题(一)参考答案

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

1.数据库管理系统(DBMS)2.关系(二维表)3.(A,C)4.图状结构5.数

据6.B树7.隔离性8.DISTINCT9.拥有者10.DML

二、选择题(每小题1分,共20分)

1~5DCAAC6~10ACABB11-15CDCDA16-20DBABB

三.名词解释(每小题3分,共15分)

1.数据库:数据库就是存放数据的仓库,是将数据按一定的数据模型组织、描述和存储,能够自

动进行查询和修改的数据集合。

2.候选关键字:如果在一个关系中,存在多个属性(或属性组合)都能用来唯一标识该关系中的

元组,这些属性(或属性组合)都称为该关系的候选关键字或候选码。

3.视图:视图(View)是关系数据库系统提供给用户以多种角度观察数据库中数据的重要机制,

视图是从一个或几个表导出来的表,不是真实存在的基本表而是一张虚表,视图所对应的数据并不

实际的以视图结构存储在数据库中,而是存储在视图所引用的表中。

4.游标:游标是处理数据的一种方法,它允许应用程序对查询语句SELECT返回的结果集中每一

行进行相同或不同的操作,而不是一次对整个结果集进行同一种操作。

5.事务:事务由一系列的数据操作组成,是数据库应用程序的基本逻辑单元,用来保证数据的一

致性。

四、简答题(每小题5分,共25分)

1.创建索引的必要性和作用是什么?

答:数据库的索引就类似于书籍的目录,如果想快速查找而不是逐页查找指定的内容,可以通过目

录中章节的页号找到其对应的内容。类似的,索引通过记录表中的关键值指向表中的记录,这样数

据库引擎就不用扫描整个表而定位到相关的记录。相反,如果没有索引,则会导致SQLServer搜索

表中的所有记录,以获取匹配结果。

2.简述主键约束和唯一性约束的异、同点。

5

答:主键约束在表中定义一个主键值,这是唯一确定表中每一行数据的标识符。该约束强制实体完

整性。一个表中最多只能有一个主键,且主键列不允许取空值。

UNIQUE(唯一性)约束指定表中某一个列或多个列不能有相同的两行或两行以上的数据存在。这

种约束通过实现唯一性索引来强制实体完整性。当表中已经有了一个主键约束时,如果需要在其他

列上实现实体完整性,又因为表中不能有两个或两个以上的主键约束,所以只能通过创建UNIQUE

约束来实现。一般的,把UNIQUE约束称为候选的主键约束。

3.简述T-SQL语言的特点。

答:(1)综合统一:T-SQL语言集数据定义语言、数据操纵语言、数据控制语言和附加语言元素

为一体。

(2)两种使用方式,统一的语法结构:即联机交互式和嵌入高级语言的使用方式。

(3)高度非过程化。

(4)类似于人的思维习惯,容易理解和掌握。

4.简述存储过程的优点。

答:存储过程最主要的特色是当写完一个存储过程后即被翻译成可执行码存储在系统表内,当作是

数据库的对象之一,一般用户只要执行存储过程,并且提供存储过程所需要的参数就可以得到所要

的结果而不必再去编辑T-SQL命令。

5.简述死锁及其解决办法。

答:产生死锁的情况一般包括以下两种:

第一种情况,当两个事务分别锁定了两个单独的对象,这时每一个事务都要求在另外一个事务

锁定的对象上获得一个锁,因此每一个事务都必须等待另外一个事务释放占有的锁,这时,就发生

了死锁。这种死锁是最典型的死锁形式。

第二种情况,当在一个数据库中时,有若干个长时间运行的事务执行并行的操作,当查询分析

器处理一种非常复杂的查询例如连接查询时,那么由于不能控制处理的顺序,有可能发生死锁现象。

在数据库中解决死锁常用的方法有:

(1)要求每个事务一次就将要使用的数据全部加锁,否则就不能继续执行。

(2)允许死锁发生,系统来用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论