数据库原理与应用期末复习题.docx
《数据库原理与应用期末复习题.docx》由会员分享,可在线阅读,更多相关《数据库原理与应用期末复习题.docx(13页珍藏版)》请在冰豆网上搜索。
![数据库原理与应用期末复习题.docx](https://file1.bdocx.com/fileroot1/2023-1/23/532a3ce6-d4f5-40a8-b3dd-eb090c0d7123/532a3ce6-d4f5-40a8-b3dd-eb090c0d71231.gif)
数据库原理与应用期末复习题
数据库原理与应用期末复习题
一、选择题(课后作业选择题)
1、设关系R和S的结构相同,分别有m和n个元组,那么R-S操作的结果中元组个数为[]
A.为m-nB.为mC.小于等于mD.小于等于(m-n)
2、有15个实体类型,并且它们之间存在着15个不同的二元联系,其中5个是1:
1联系类型,5个是1:
N联系类型,5个M:
N联系类型,那么根据转换规则,这个ER结构转换成的关系模式有( )
A.15个B.20个C.25个D.30个
3、数据库在磁盘上的基本组织形式是( )
A.DBB.文件C.二维表D.系统目录
4、在关系模式R中,函数依赖X→Y的语义是( )
A.在R的某一关系中,若两个元组的X值相等,则Y值也相等
B.在R的每一关系中,若两个元组的X值相等,则Y值也相等
C.在R的某一关系中,Y值应与X值相等
D.在R的每一关系中,Y值应与X值相等
5、数据库系统中,对用户使用的数据视图的描述称为( )
A.概念模式 B.内模式C.存储模式 D.外模式
6、数据库的三级模式之间存在着两级映象,使数据库系统具有较高的数据( )
A.相容性 B.独立性C.共享性 D.一致性
7、实体完整性规则是指关系中( )
A.不允许有空行 B.主键不允许有空值C.不允许有空列 D.外键不允许有空值
8、实现关系代数投影运算的SQL子句是( )
A.SELECT B.ORDER BYC.FROM D.WHERE
9、将ER模型转换成关系模型,属于数据库的( )
A.需求分析 B.概念设计C.逻辑设计 D.物理设计
10、公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员,从职员到部门的联系类型是( )。
A.多对多B.一对一C.多对一D.一对多
11、数据库系统的物理数据独立性是指( )。
A.概念模式改变,外模式和应用程序不变B.概念模式改变,内模式不变
C.内模式改变,概念模式不变D.内模式改变,外模式和应用程序不变
12、有关系:
教学(学号、教工号、课程号)
假定每个学生可以选修多门课程,每门课程可以由多名学生来选修,每个老师只能讲授一门课程,每门课程可以由多个老师来讲授,那么该关系的主键是( )。
A.课程号B.教工号C.(学号,课程号)D.(学号,教工号)
13、关系代数表达式σ3<′4′(S)表示( )。
A.表示从S关系中挑选3的值小于第4个分量的元组
B.表示从S关系中挑选第3个分量值小于4的元组
C.表示从S关系中挑选第3个分量值小于第4个分量的元组
D.表示从S关系中挑选第4个分量值大于3的元组
14、事务日志是用于保存( )
A.程序运行过程B.数据操作
C.程序的执行结果D.对数据的更新操作
15、DB、DBMS和DBS三者之间的关系是( )
A.DB包括DBMS和DBSB.DBS包括DB和DBMS
C.DBMS包括DB和DBSD.DBS与DB和DBMS无关
16、规范化过程是对关系模式逐步分解的过程,其中从2NF向3NF变换,消除了( )
A.主属性对候选键的部分函数依赖B.主属性对候选键的传递函数依赖
C.非主属性对候选键的部分函数依赖D.非主属性对候选键的传递函数依赖
17、SQL语句执行的结果是()。
A.数据库B.表
C.元组D.属性
18、提交事务时使用()。
A.begintransactionB.committransaction
C.rollbacktransactionD.savetransaction
19、以下描述正确的是()。
A.触发器需要专门语句调用B.使用exec命令执行触发器
C.创建存储过程的语句是createtriggerD.存储过程需要专门语句调用
20、显示视图特征的系统存储过程是()。
A.sp_helpB.sp_helptextC.sp_dependsD.insert
21、设“学生选课情况”数据表中有学号、课程号、课程名、成绩等字段,其中可作为关键字的字段是()。
A.学号B.课程号
C.课程名D.(学号,课程号)
22、在已知教学环境中,一名学生可以选择多门课程,一门课程可以被多名学生选择,这说明学生数据与课程数据之间存在_______的联系。
()
A.一对一B.一对多
C.多对多D.未知
23、描述数据库中全体数据的逻辑结构和特征的是()。
A.内模式B.模式
C.外模式D.存储模式
24、要保证数据库物理数据独立性,需要修改的是()
A.模式B.模式与内模式的映射
C.模式与外模式的映射D.内模式
25、___属于信息世界的模型,实际上是现实世界到机器世界的一个中间层次。
()
A.数据模型B.概念模型
C.数据流图D.关系模型
26、涉及到三个表的查询时,where子句中至少有_____个条件表达式。
()
A.0B.1C.2D.3
27、下列四项中,不属于数据库特点的是()。
A.数据共享B.数据完整性
C.数据冗余很高D.数据独立性高
28、创建数据库使用______命令。
()
A.CreateDatabaseB.AlterDatabase
C.DropDatabaseD.DBCCShinkdatabase
29、在select语句中使用“*”表示_____。
()
A.全部元组B.表
C.全部属性D.键
30、在关系模式R中,若所有非主属性都完全依赖于主属性,则R一定满足______。
A.2NFB.3NF
C.4NFD.5NF
31、SQLServer2000提供了一整套管理工具和实用程序,其中负责启动、暂停和停止SQLServer的4种服务的是()。
A.企业管理器B.导入和导出数据
C.事件探察器D.服务管理器
32、SQLServer2000的主数据文件名的扩展名为()。
A.ldfB.mdf
C.ndfD.无扩展名
33、在关系理论中,如果一个关系中的一个属性或属性组能够唯一地标识一个元组,那么可称该属性或属性组为()。
A.索引码B.关键字
C.域D.关系名
34、下列四项中说法不正确的是()
A.数据库减少了数据冗余B.数据库中的数据可以共享
C.数据库避免了一切数据的重复D.数据库具有较高的数据独立性
35、______是从信息世界到机器世界的转换。
这种模型是面向数据库中数据逻辑结构的。
()
A.数据模型B.概念模型
C.数据流图D.关系模型
36、表达式pricebetween5and20的含义是()。
A.price>=5andprice<=20B.price>5andprice<20
C.price>=5orprice<=20D.price>5orprice<20
37、储蓄所有多个储户,一个储户可以在多个储蓄所存取款,储蓄所和储户之间的联系类型是:
()。
A.多对多B.一对一
C.多对一D.一对多
38、创建数据表使用________命令。
()
A.CreateDatabaseB.AlterDatabase
C.DropDatabaseD.CreateTable
39、下列表名中______是合法表名。
()
A.tableB.#book
C.readertableD.-mag
40、在关系模式R中,若存在非主属性传递依赖于主属性,则R一定不满足()。
A.1NFB.2NFC.3NFD.4NF
41、SELECT语句中与HAVING子句通常同时使用的是()子句。
A.ORDERBYB.WHEREC.GROUPBYD.无需配合
42、要删除mytable表中的myindex索引,可以使用()语句。
A.DROPmyindexB.DROPmytable.myindex
C.DROPINDEXmyindexD.DROPINDEXmytable.myindex
43、数据表中某个属性的值为NULL,则表示该数据值是()。
A.0B.空字符
C.空字符串D.无任何数据
44、删除触发器的语句是()
A.createtriggerB.altertrigger
C.droptriggerD.dropprocedure
45、部分匹配查询中有关通配符“_”的正确的叙述是()。
A.“_”代表多个字符B.“_”代表一个字符
C.“_”不能与“%”一同使用D.“_”可以代表零个或多个字符
二、填空题(课后作业填空题)
1、在SQLServer2000中,一个数据库至少应该包含一个___________文件和一个___________文件。
(数据库,事务日志)
2、在关系代数中专门的关系运算包括_______、投影、_______、_______等运算。
(选择,连接,除)
3、SQL语言集数据定义、__________、_________和控制功能于一体,可以创建、修改数据库各种对象。
(查询、更新)
4、SQL最核心的语句是实现查询功能的__________语句。
(select)
5、数据库系统由__________、___________、__________、________和________五部分组成。
(数据库,数据库管理系统,应用系统,数据库管理员,用户)
6、通配符%的含义表示_____________。
(表示任意多个字符)
7、________是用户可以看见和使用的局部数据的逻辑结构和特征的描述。
(外模式)
8、随着计算机技术的发展,数据管理经历了人工管理阶段、和____________阶段。
(文件管理阶段,数据库系统管理阶段)
9、两个实体之间的联系可分为:
一对一联系、___________、___________。
(1对多,多对多)
10、常见的数据模型的种类为:
_________,______,__________,面向对象模型。
(层次,网状,关系)
11、数据模型的组成是指________,______,__________。
(数据结构、数据操作、数据完整性约束)
12、在SQLServer2000中最常用的三个管理工具是________,____________,_________。
(查询分析器,企业管理器,服务管理器)
13、从数据库中删除数据库pubs的命令是___________________。
(dropdatabasepubs)
14、索引的类型有______________和非聚集索引。
(聚集索引)
15、在T-SQL中,如果要去掉查询结果中的重复记录,应使用关键字______________distinct。
16、当以降序输出查询结果时使用关键字______________。
(desc)
17、对结果集进行排序时使用关键字______________。
(orderby)
18、将记录分为若干组进行集合函数运算时使用关键字______________。
(Groupby)
19、运行存储过程的命令是______________。
(Exec)
20、T-SQL的整块注释的形式为______________。
(/**/)
三、创建操作
1、使用createtable语句建图书信息表Library(包括约束)。
属性名
数据类型
可否为空
含义
Bno
Char(6)
否
书编号(主键,书编号以字符“c”开头)
Bname
Varchar(20)
否
书名
Publisher
Varchar(30)
可
出版社(默认值为“清华大学”)
Bnum
int
可
图书数量(Bnum>=0)
CreatetableLibrary
(
Bnochar(6)notnullprimarykeycheck(Bnolike'c%'),
Bnamevarchar(20)notnull,
Publishervarchar(30)defaulte'清华大学',
Bnumintcheck(Bnum>=0)
)
2、根据上题创建的表Library,建立图书数量大于100的视图L_view:
由书编号(Bno)、出版社(Publisher)、图书数量(Bnum)组成。
(3分)
createviewL_view
asselectBno,Publisher,Bnum
fromLibrary
whereBnum>100
3、使用createtable语句建student表(包括约束)。
属性名
数据类型
可否为空
含义
Sno
Char(7)
否
学号(主键)
Sname
Varchar(20)
否
学生姓名
Ssex
Char
(2)
否
性别(默认为男)
Sage
Smallint
否
年龄(Sage>0)
Clno
Char(5)
可
学生所在班级
createtablestudent
(snochar(7)notnullprimarykey,
snamevarchar(20)notnull,
ssexchar
(2)notnuldefault‘男’,
sagesmallintnotnulcheck(sage>0),
clnochar(5))
4、根据上题创建的表,建立所有女生的视图stu_view:
由学生学号(Sno)、年龄(Sage)、班号(Clno)组成。
(3分)
createviewstu_view
asselectsno,sage,clno
fromstudent
wheressex=’女’
四、检索操作
已知表:
学生信息表student(sno,sname,ssex,sage,clno),其中sno表示学号,sname表示姓名,ssex表示性别,sage表示年龄,clno表示班号。
课程信息表course(cno,cname,credit),其中cno表示课程号,cname表示课程名,credit表示学分。
学生选课表grade(sno,cno,gmark),其中sno表示学号,cno表示课程号,gmark表示成绩
1、从学生信息表student中检索出所有女生的个人信息
select*
fromstudent
wheressex='女'
2、从学生信息表student中检索出01311班、01312班学生的姓名、性别、年龄
selectsname,ssex,sage
fromstudent
whereclno='01311'orclno='01312'
3、从学生信息表student中检索出所有姓李的个人信息
select*
fromstudent
wheresnamelike'李%'
4、从学生信息表student中检索出各班级人数
selectclno,count(*)
fromstudent
groupbyclno
5、从学生选课表中检索出课程号为’4’的平均分、最高分、最低分
selectavg(gmark),max(gmark),min(gmark)
fromgrade
wherecno='4'
6、查询出所有学生的姓名、选修的课程号和成绩
selectsname,cno,gmark
fromstudent,grade
wherestudent.sno=grade.sno
7、请按课程号升序输出所有学生选课情况,并按学号降序排序。
select*
fromgrade
orderbycno,snodesc
8、查询出选修了三门课的学生学号。
Selectsno
Fromgrade
Groupbysno
Havingcount(*)=3
9、从学生信息表student中检索出所有01311班的学生信息
select*
fromstudent
whereclno=’01311’
10、从学生信息表student中检索出01311班所有女生的姓名、性别、年龄
selectsname,ssex,sage
fromstudent
whereclno='01311'andssex='女'
11、从学生信息表student中检索出所有学号以“2001”开头的个人信息
select*
fromstudent
wheresnolike'2001%'
12、从学生选课表grade中查询出每个学生的平均成绩
selectsno,avg(cno)
fromgrade
groupbysno
13、从学生选课表grade中检索出学号为’2000101’的学生的平均分、最高分、最低分
selectavg(gmark),max(gmark),min(gmark)
fromgrade
wheresno='2000101'
14、查询出学号为’2000101’的学生的姓名、选修的课程号和成绩
selectsname,cno,gmark
fromstudent,grade
wherestudent.sno=grade.snoandsno=’2000101’
15、求出所有学生选修的课程数,并按学号降序排序
selectsno,count(*)
fromgrade
groupbysno
ordersnodesc
16、查询出没有选修1号课程的学生姓名
selectsname
fromstudent
wheresnonotin
(selectsno
fromgrade
wherecno='1'
)
五、更新操作
1、彻底从数据库中删除课程信息表course
Droptablecourse
2、把学生信息表的表名student改为stu
sp_renamestudent,stu
3、向表中插入记录
向student表插入下表中第一条记录(学生李勇的记录)。
insert[into]student
values(‘2000101’,’李勇’,’男’,20,’00311’)
4、在学生选课表中,修改学号为’2001110’的学生的成绩为70分
updategrade
setgmark=70
wheresno='2001110'
5、从学生信息表中删除学号为’2001110’的学生的记录
deletefromstudent
wheresno=’2001110’
6、为学生信息表student创建一个唯一聚集索引,索引名为stu_ind。
createuniqueclusteredindexstu_indonstudent(sno)
7、删除数据库pubs
Dropdatabasepubs
8、把课程信息表的表名course改为cour
sp_renamecourse,cour
9、向表中插入记录
向course表插入下表中第一条记录。
insert[into]course
values(‘1,’数据库’,4)
10、在学生信息表中,修改学号为’2001110’的学生的性别为女
updatestudent
setssex=’女’
wheresno='2001110'
11、从学生选课表grade中删除学号为’2001110’且成绩不及格的记录
deletefromgrade
wheresno=’2001110’andgmarg<60
12、用altertable语句给表student添加外键约束,使班号clno的取值来源与班级表class中clno字段的取值。
altertablestudent
addforeignkey(clno)referencsclass(clno)
六、综合题
1.假设某公司在多个地区设有销售部经销本公司的各种产品,每个销售部聘用多名职工,且每名职工只属于一个销售部。
销售部有部门名称、地区和电话等属性,产品有产品编码、品名和单价等属性,职工有职工号、姓名和性别等属性,每个销售部销售产品有数量属性。
(1)根据上述语义画出ER图,要求在图中画出属性并注明联系的类型。
(2)试将ER模型转换成关系模型,并指出每个关系模式的主键和外键。
2.设工厂里有一个记录职工基本信息的关系模式:
R(职工编号,职工姓名,车间编号,车间主任)。
如果规定:
每个职工只能隶属于一个车间;
每个车间只有一个车间主任。
试回答下列问题:
(1)试问关系模式R是否属于第二范式(2NF),为什么?
(2)关系模式R是否属于第三范式(3NF),为什么?
如果S不属于3NF,请将S分解成3NF
3.设工厂里有一个记录职工每天日产量的关系模式:
R(职工编号,日期,日产量,车间编号,车间主任)。
如果规定:
每个职工每天只有一个日产量;
每个职工只能隶属于一个车间;
每个车间只有一个车间主任。
试回答下列问题:
(1)根据上述规定,写出模式R的基本FD和关键码;
(2)说明R不是2NF的理由,并把R分解成2NF模式集;
(3)进而再分解成3NF模式集,并说明理由。