数据库习题资料.docx
《数据库习题资料.docx》由会员分享,可在线阅读,更多相关《数据库习题资料.docx(20页珍藏版)》请在冰豆网上搜索。
数据库习题资料
考试复习资料
第一章
1.试述数据、数据库、数据库系统、数据库管理系统的概念。
(37)
答:
(l)数据(Data):
描述事物的符号记录称为数据。
数据的种类有数字、文字、图形、图像、声音、正文等。
数据与其语义是不可分的。
解析在现代计算机系统中数据的概念是广义的。
早期的计算机系统主要用于科学计算,处理的数据是整数、实数、浮点数等传统数学中的数据。
现代计算机能存储和处理的对象十分广泛,表示这些对象的数据也越来越复杂。
数据与其语义是不可分的。
500这个数字可以表示一件物品的价格是500元,也可以表示一个学术会议参加的人数有500人,还可以表示一袋奶粉重500克。
(2)数据库(DataBase,简称DB):
数据库是长期储存在计算机内的、有组织的、可共享的数据集合。
数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并可为各种用户共享。
(3)数据库系统(DataBas。
Sytem,简称DBS):
数据库系统是指在计算机系统中引入数据库后的系统构成,一般由数据库、数据库管理系统(及其开发工具)、应用系统、数据库管理员构成。
解析数据库系统和数据库是两个概念。
数据库系统是一个人一机系统,数据库是数据库系统的一个组成部分。
但是在日常工作中人们常常把数据库系统简称为数据库。
希望读者能够从人们讲话或文章的上下文中区分“数据库系统”和“数据库”,不要引起混淆。
(4)数据库管理系统(DataBaseManagementsytem,简称DBMs):
数据库管理系统是位于用户与操作系统之间的一层数据管理软件,用于科学地组织和存储数据、高效地获取和维护数据。
DBMS的主要功能包括数据定义功能、数据操纵功能、数据库的运行管理功能、数据库的建立和维护功能。
解析DBMS是一个大型的复杂的软件系统,是计算机中的基础软件。
目前,专门研制DBMS的厂商及其研制的DBMS产品很多。
著名的有美国IBM公司的DBZ关系数据库管理系统和IMS层次数据库管理系统、美国Oracle公司的orade关系数据库管理系统、s油ase公司的s油ase关系数据库管理系统、美国微软公司的SQLServe,关系数据库管理系统等。
7.试述数据模型的概念、数据模型的作用和数据模型的三个要素。
答:
数据模型是数据库中用来对现实世界进行抽象的工具,是数据库中用于提供信息表示和操作手段的形式构架。
一般地讲,数据模型是严格定义的概念的集合。
这些概念精确描述了系统的静态特性、动态特性和完整性约束条件。
因此数据模型通常由数据结构、数据操作和完整性约束三部分组成。
(l)数据结构:
是所研究的对象类型的集合,是对系统静态特性的描述。
(2)数据操作:
是指对数据库中各种对象(型)的实例(值)允许进行的操作的集合,包括操作及有关的操作规则,是对系统动态特性的描述。
(3)数据的约束条件:
是一组完整性规则的集合。
完整性规则是给定的数据模型中数据及其联系所具有的制约和依存规则,用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容。
解析数据模型是数据库系统中最重要的概念之一。
必须通过《概论》的学习真正掌握数据模型的概念和作用。
数据模型是数据库系统的基础。
任何一个DBMS都以某一个数据模型为基础,或者说支持某一个数据模型。
数据库系统中,模型有不同的层次。
根据模型应用的不同目的,可以将模型分成两类或者说两个层次:
一类是概念模型,是按用户的观点来对数据和信息建模,用于信息世界的建模,强调语义表达能力,概念简单清晰;另一类是数据模型,是按计算机系统的观点对数据建模,用于机器世界,人们可以用它定义、操纵数据库中的数据,一般需要有严格的形式化定义和一组严格定义了语法和语义的语言,并有一些规定和限制,便于在机器上实现。
18.试述关系模型的概念,定义并解释以下术语:
(l)关系
(2)属性(3)域(4)元组(5)主码(6)分量(7)关系模式
答:
关系模型由关系数据结构、关系操作集合和关系完整性约束三部分组成。
在用户观点下,关系模型中数据的逻辑结构是一张二维表,它由行和列组成。
(l)关系:
一个关系对应通常说的一张表;
(2)属性:
表中的一列即为一个属性;(3)域:
属性的取值范围;(4)元组:
表中的一行即为一个元组;(5)主码:
表中的某个属性组,它可以惟一确定一个元组;(6)分量:
元组中的一个属性值;(7)关系模式:
对关系的描述,一般表示为关系名(属性1,属性2,…,属性n)
21.定义并解释以下术语:
模式、外模式、内模式、DDL、DML模式、外模式、内模式,亦称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。
模式描述的是数据的全局逻辑结构。
外模式涉及的是数据的局部逻辑结构,通常是模式的子集。
内模式,亦称存储模式,是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
DDL:
数据定义语言,用来定义数据库模式、外模式、内模式的语言。
DML:
数据操纵语言,用来对数据库中的数据进行查询、插入、删除和修改的语句。
25.系统分析员、数据库设计人员、应用程序员的职责是什么?
答:
系统分析员负责应用系统的需求分析和规范说明,系统分析员要和用户及DBA相结合,确定系统的硬件、软件配置,并参与数据库系统的概要设计。
数据库设计人员负责数据库中数据的确定、数据库各级模式的设计。
数据库设计人员必须参加用户需求调查和系统分析,然后进行数据库设计。
在很多情况下,数据库设计人员就由数据库管理员担任。
应用程序员负责设计和编写应用系统的程序模块,并进行调试和安装。
第2章关系数据库
3.定义并解释下列术语,说明它们之间的联系与区别:
(1)域,笛卡尔积,关系,元组,属性
(2)主码,候选码,外部码
(3)关系模式,关系,关系数据库
5.设有一个SPJ数据库,包括S,P,J,SPJ四个关系模式:
(图表在75页)
1)求供应工程J1零件的供应商号码SNO:
πSno(σSno=‘J1’(SPJ))
2)求供应工程J1零件P1的供应商号码SNO:
πSno(σSno=‘J1’∧Pno=‘P1‘(SPJ))
3)求供应工程J1零件为红色的供应商号码SNO:
πSno(σPno=‘P1‘(σCOLOR=’红‘(P)∞SPJ))
4)求没有使用天津供应商生产的红色零件的工程号JNO:
πJno(SPJ)-πJNO(σcity=‘天津’∧Color=‘红‘(S∞SPJ∞P)
5)求至少用了供应商S1所供应的全部零件的工程号JNO:
πJno,Pno(SPJ)÷πPno(σSno=‘S1‘(SPJ))
第3章关系数据库标准语言SQL
3.用sQL语句建立第二章习题5中的4个表。
(127)
答:
对于S表:
S(SNO,SNAME,STATUS,CITY);
建S表:
CREATETABLES(SnoC
(2)UNIQUE,SnameC(6),StatusC
(2),CityC(4));
对于P表:
P(PNO,PNAME,COLOR,WEIGHT);
建P表:
CREATETABLEP(PnoC
(2)UNIQUE,PnameC(6),COLORC
(2),WEIGHTINT);
对于J表:
J(JNO,JNAME,CITY);
建J表:
CREATETABLEJ(JnoC
(2)UNlQUE,JNAMEC(8),CITYC(4))
对于sPJ表:
sPJ(sNo,PNo,JNo,QTY);
建SPJ表:
SPJ(SNO,PNO,JNO,QTY)
CREATETABLESPJ(SnoC
(2),PnoC
(2),JNOC
(2),QTYINT))
5.针对习题3中的四个表试用SQL语言完成以下各项操作:
(1)找出所有供应商的姓名和所在城市。
SELECTSNAME,CITYFROMS
(2)找出所有零件的名称、颜色、重量。
SELECTPNAME,COLOR,WEIGHTFROMP
(3)找出使用供应商S1所供应零件的工程号码。
SELECTDISTJNOFROMSPJWHERESNO='S1'
(4)找出工程项目J2使用的各种零件的名称及其数量。
SELECTPNAME,QTYFROMSPJ,P
WHEREP.PNO=SPJ.PNOANDSPJ.JNO='J2'
(5)找出上海厂商供应的所有零件号码。
SELECTPNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDCITY='上海'
(6)出使用上海产的零件的工程名称。
SELECTJNAMEFROMSPJ,S,J
WHERES.SNO=SPJ.SNOANDS.CITY='上海'ANDJ.JNO=SPJ.JNO
(7)找出没有使用天津产的零件的工程号码。
注意:
SELECTDISPJNOFROMSPJWHEREJNONOTIN(SELECTDISTJNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDS.CITY='天津')适用于JNO是唯一或不唯一的情况.
注意:
SELECTDISTJNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDS.CITY<>'天津'适用于JNO是唯一的情况
(8)把全部红色零件的颜色改成蓝色。
UPDATEPSETCOLOR='蓝'WHERECOLOR='红'
(9)由S5供给J4的零件P6改为由S3供应。
UPDATESPJSETSNO='S3'WHERESNO='S5'ANDJNO='J4'ANDPNO='P6'
(10)从供应商关系中删除供应商号是S2的记录,并从供应情况关系中删除相应的记录。
A、DELETEFROMSWHERESNO=’S2’
B、DELETEFROMSPJWHERESNO=‘S2’
(11)请将(S2,J6,P4,200)插入供应情况关系。
INSERTINTOSPJVALUES(‘S2’,‘J6’,‘P4’,200)
7.试述视图的优点。
答
(l)视图能够简化用户的操作;
(2)视图使用户能以多种角度看待同一数据;(3)视图对重构数据库提供了一定程度的逻辑独立性;(4)视图能够对机密数据提供安全保护。
第4章数据库安全性
8.请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能:
(148)
(a)用户王明对两个表有SELECT权力。
GRANTSELECTON职工,部门
TO王明
(b)用户李勇对两个表有INSERT和DELETE权力。
GRANTINSERT,DELETEON职工,部门
TO李勇
(c)每个职工只对自己的记录有SELECT权力。
GRANTSELECTON职工
WHENUSER()=NAME
TOALL;
(d)用户刘星对职工表有SELECT权力,对工资字段具有更新权力。
GRANTSELECT,UPDATE(工资)ON职工
TO刘星
(e)用户张新具有修改这两个表的结构的权力。
库
GRANTALTERTABLEON职工,部门
TO张新;
(f)用户周平具有对两个表所有权力(读,插,改,删数据),并具有给其他用户授权的权力。
GRANTALLPRIVILEGESON职工,部门
TO周平
WITHGRANTOPTION;
(g)用户杨兰具有从每个部门职工中SELECT最高工资、最低工资、平均工资的权力,他不能查看每个人的工资。
CREATEVIEW部门工资AS
SELECT部门.名称,MAX(工资),MIN(工资),AVG(工资)
FROM职工,部门
WHERE职工.部门号=部门.部门号
GROUPBY职工.部门号
GRANTSELECTON部门工资
TO杨兰;
第5章数据库完整性
6.假设有下面两个关系模式:
职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;部门(部门号,名称,经理名,电话),其中部门号为主码。
用 SQL语言定义这两个关系模式,要求在模式中完成以下完整性约束条件的定义:
定义每个模式的主码;定义参照完整性;定义职工年龄不得超过60岁。
(164)
答:
CREATETABLEDEPT
(DeptnoNUMBER
(2),
DeptnameVARCHAR(10),
ManagerVARCHAR(10),
PhoneNumberChar(12)
CONSTRAINTPK_SCRIMARYKEY(Deptno));
CREATETABLEEMP
(EmpnoNUMBER(4),
EnameVARCHAR(10),
AgeNUMBER
(2),
CONSTRAINTC1CHECK(Aage<=60),
JobVARCHAR(9),
SalNUMBER(7,2),
DeptnoNUMBER
(2),
CONSTRAINTFK_DEPTNO
FOREIGNKEY(Deptno)
REFFERENCESDEPT(Deptno));
第6章关系数据库理论
1.理解并给出下列术语的定义:
(194)
函数依赖、部分函数依赖、完全函数依赖、传递依赖、候选码、主码、外码、全码(All一key)、1NF、ZNF、3NF、BcNF、多值依赖、4NF。
定义1:
设R(U)是属性集U上的关系模式。
X,Y是属性集U的子集。
若对于R(U)的任意一个可能的关系r,r中不可能存在两个元组在X上的属性值相等,而在Y上的属性值不等,则称X函数确定Y或Y函数依赖于X,记作XY。
(即只要X上的属性值相等,Y上的值一定相等。
)
术语和记号:
XY,但Y不是X的子集,则称XY是非平凡的函数依赖。
若不特别声明,总是讨论非平凡的函数依赖。
XY,但Y是X的子集,则称XY是平凡的函数依赖。
若XY,则X叫做决定因素(Determinant)。
若XY,YX,则记作XY。
若Y不函数依赖于X,则记作XY。
定义2:
在R(U)中,如果XY,并且对于X的任何一个真子集X’,都有X’Y,则称Y对X完全函数依赖
若XY,但Y不完全函数依赖于X,则称Y对X部分函数依赖
定义3:
若关系模式R的每一个分量是不可再分的数据项,则关系模式R属于第一范式(1NF)。
定义4:
若关系模式R∈1NF,且每一个非主属性完全函数依赖于码,则关系模式R∈2NF。
(即1NF消除了非主属性对码的部分函数依赖则成为2NF)。
定义5:
关系模式R中若不存在这样的码X、属性组Y及非主属性Z(Z不是Y的子集)使得XY,YX,YZ成立,则称R∈3NF。
定义6:
关系模式R∈1NF。
若XY且Y不是X的子集时,X必含有码,则R∈BCNF。
定义7:
关系模式R∈1NF,如果对于R的每个非平凡多值依赖XY(Y不是X的子集,Z=U-X-Y不为空),X都含有码,则称R∈4NF。
2.建立一个关于系、学生、班级、学会等诸信息的关系数据库。
学生:
学号、姓名、出生年月、系名、班号、宿舍区。
班级:
班号、专业名、系名、人数、入校年份。
系:
系名、系号、系办公地点、人数。
学会:
学会名、成立年份、办公地点、人数。
语义如下:
一个系有若干专业,每个专业每年只招一个班,每个班有若干学生。
一个系的学生住在同一宿舍区。
每个学生可参加若干学会,每个学会有若干学生。
学生参加某学会有一个入会年份。
请给出关系模式,写出每个关系模式的极小函数依赖集,指出是否存在传递函数依赖,对于函数依赖左部是多属性的情况讨论函数依赖是完全函数依赖,还是部分函数依赖。
指出各关系模式的候选码、外部码,有没有全码存在?
解:
(1)关系模式如下:
学生:
S(Sno,Sname,Sbirth,Dept,Class,Rno)
班级:
C(Class,Pname,Dept,Cnum,Cyear)
系:
D(Dept,Dno,Office,Dnum)
学会:
M(Mname,Myear,Maddr,Mnum)
(2)每个关系模式的最小函数依赖集如下:
A、学生S(Sno,Sname,Sbirth,Dept,Class,Rno)的最小函数依赖集如下:
SnoSname,SnoSbirth,SnoClass,ClassDept,DEPTRno
传递依赖如下:
由于SnoDept,而DeptSno,DeptRno(宿舍区)
所以Sno与Rno之间存在着传递函数依赖。
由于ClassDept,DeptClass,DeptRno
所以Class与Rno之间存在着传递函数依赖。
由于SnoClass,ClassSno,ClassDept
所以Sno与Dept之间存在着传递函数依赖。
B、班级C(Class,Pname,Dept,Cnum,Cyear)的最小函数依赖集如下:
ClassPname,ClassCnum,ClassCyear,PnameDept.
由于ClassPname,PnameClass,PnameDept
所以C1ass与Dept之间存在着传递函数依赖。
C、系D(Dept,Dno,Office,Dnum)的最小函数依赖集如下:
DeptDno,DnoDept,DnoOffice,DnoDnum
根据上述函数依赖可知,Dept与Office,Dept与Dnum之间不存在传递依赖。
D、学会M(Mname,Myear,Maddr,Mnum)的最小函数依赖集如下:
MnameMyear,MnameMaddr,MnameMnum
该模式不存在传递依赖。
(3)各关系模式的候选码、外部码,全码如下:
A、学生S候选码:
Sno;外部码:
Dept、Class;无全码
B、班级C候选码:
Class;外部码:
Dept;无全码
C、系D候选码:
Dept或Dno;无外部码;无全码
D、学会M候选码:
Mname;无外部码;无全码
第7章数据库设计
1.试述数据库设计过程。
(234)
答:
这里只概要列出数据库设计过程的六个阶段:
(l)需求分析;
(2)概念结构设计;(3)逻辑结构设计;(4)数据库物理设计;(5)数据库实施;(6)数据库运行和维护。
这是一个完整的实际数据库及其应用系统的设计过程。
不仅包括设计数据库本身,还包括数据库的实施、运行和维护。
设计一个完善的数据库应用系统往往是上述六个阶段的不断反复。
19.请设计一个图书馆数据库,此数据库中对每个借阅者保存读者记录,包括:
读者号,姓名,地址,性别,年龄,单位。
对每本书存有:
书号,书名,作者,出版社。
对每本被借出的书存有读者号、借出日期和应还日期。
要求:
给出E一R图,再将其转换为关系模型。
答:
E一R图为:
关系模型为:
读者(读者号,姓名,地址,性别书(书号,书名,作者,出版社)借书(读者号,书号,借出日期,年龄,单位)应还日期)
………………………………………装………………………………………订………………………………………………………………………线……….线………………………………
黔南民族师范学院2009--2010学年度第一学期
(1)下列关于关系数据模型的术语中,哪一个术语所表达的概念与二维表中的“行”的概念最接近?
()
A)属性B)关系C)域D)元组
(2)在下面的两个关系中,学号和班级号分别为学生关系和班级关系的主键(或称主码),则外键是()
学生(学号,姓名,班级号,成绩)
班级(班级号,班级名,班级人数,平均成绩)
A)学生关系的“学号”B)班级关系的“班级号”
C)学生关系的“班级号”D)班级关系的“班级名”
(3)在数据库技术中,实体-联系模型是一种()
A)概念数据模型B)结构数据模型C)物理数据模型D)逻辑数据模型
(4)关系数据模型通常由3部分组成,它们是()
A)数据结构,数据通信,关系操作
B)数据结构,数据操作,数据完整性约束
C)数据通信,数据操作,数据完整性约束
D)数据结构,数据通信,数据完整性约束
(5)SQL语言集数据定义功能、数据操纵功能和数据控制功能于一体。
如下所列语句中,哪一个是属于数据定义功能的?
()
A)GRANTB)CREATEC)INSERTD)SELECT
(6)如果有两个事务,同时对数据库中同一数据进行操作,不会引起冲突的操作是()
A)其中有一个是DELETEB)一个是SELECT,另一个是UPDATE
C)两个都是SELECTD)两个都是UPDATE
(7)假定学生关系是S(Sno,SNAME,SEX,AGE),课程关系是C(Cno,CNAME,TEACHER),学生选课关系是SC(Sno,Cno,GRADE),要查找选修“COMPUTER”课程的女学生的姓名,将涉及到关系()
A)SB)SC,CC)S,SCD)S,C,SC
(8)数据是信息的符号表示或称载体;信息则是数据的内涵,是数据的()
A)语法解释B)语义解释C)语意说明D)用法说明
(9)数据管理技术发展阶段中,人工管理阶段与文件系统阶段的主要区别是文件系统()
A)数据共享性强B)数据可长期保存
C)采用一定的数据结构D)数据独立性好
(10)数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展。
分布式数据库、面向对象数据库等新型数据库属于哪一个发展阶段?
()
A)人工管理阶段B)文件系统阶段
C)数据库系统阶段D)高级数据库技术阶段
(11)为了防止一个用户的工作不适当地影响另一个用户,应该采取()
A)完整性控制B)安全性控制C)并发控制D)访问控制
(12)关系数据库中,实现实体之间的联系是通过表与表之间的()
A)公共索引B)公共存储C)公共元组D)公共属性
(13)SQL语言中,删除一个表的命令是()
A)DELETEB)DROPC)CLEARD)REMOVE
(14)不同的实体是根据什么区分的?
()
A)所代表的对象B)实体名字C)属性多少D)属性的不同
(15)完成关系模式设计是在数据库设计的()
A)需求分析阶段B)概念设计阶段
C)逻辑设计阶段D)物理设计阶段
(16)在SQL中,与“NOTIN”等价的操作符是()
A)<>ALLB)<>SOME
C)=SOMED)=ALL
(17)关于事务的故障与恢复,下列说法正确的是()
A)事务日志用来记录事务执行的频度
B)