#淮阴工学院第二学期计算机数据库期末资料文档格式.docx
《#淮阴工学院第二学期计算机数据库期末资料文档格式.docx》由会员分享,可在线阅读,更多相关《#淮阴工学院第二学期计算机数据库期末资料文档格式.docx(18页珍藏版)》请在冰点文库上搜索。
书号,
12、若关系R为M列P行,关系S为N列Q行,则R×
S的结果为M+N列P×
Q行。
13、在一个ER模型中,有3个不同的实体集和3个不同的二元联系,其中有1个一对一联系、1个一对多联系和1个多对多联系,根据ER模型转换成关系模型的规则,转换成关系的数目是4个。
13、在数据库中,产生数据不一致的根本原因是存在数据冗余。
14、主数据库文件的默认扩展名是.mdf,日志文件的扩展名是.ldf,辅助数据文件的扩展名是.ndf。
15、对于永远禁止访问SQLServer的用户货组的登录账户,可以使用系统存储过程
sp_revokelogin。
16、解决并发操作带来的数据不一致性问题普遍采用的是封锁机制。
17、在DB应用中,一般一条SQL语句可产生或处理一组记录,而程序语言语句一般一次只能处理一条记录,其协调可通过哪种技术实现游标。
18、在关系模式R(A,B,C)中,F={(A,B)→C,B→C},则R最高达到1NF。
19、在数据库系统中,日志文件用于数据库故障的恢复。
20、在关系模式R中,Y函数依赖于X的语义是在R的每一关系中,若两个元组的X值相等,则Y值也相等。
21、如果事务T对数据D已加S锁,则其他事务对数据D可以加S锁,不能加X锁。
22、设关系模式R(A,B,C,D),F是R上的FD集,F={AB→C,D→B},R的候选键为AD。
23、假设关系模式R分解为两个子关系模式R1和R2,如果R1∩R2至少包含其中一个子关系模式的主键,则此分解是无损分解。
24、用于结束事务的语句是COMMITTRANSACTIO和NROLLBACKTRANSACTION。
25、系统存储过程是在安装过程中在master数据库中创建,由系统管理员拥有。
26、SQLServer2008中的权限包括3种类型:
语句权限、对象权限和隐含权限。
27、ADO.NET是.NETFramework的一部分,是一种全新的数据库访问技术。
29、所谓模式分解,就是对原有关系在不同的属性上进行投影,从而将原有关系分解为两个
或两个以上的含有较少属性的多个关系。
30、为了方便程序的调试等操作,可以在事务的某一点处设置一个标记,这样当使用回滚语句时,可以回滚到标记所在的位置,称此标记为事务的保存点。
31、SQLServer2008中的权限包括3种类型:
32、在SQLServer2008中,数据库是由数据库文件和事务日志文件组成的。
。
系统存储过程是在安装过程中在master数据库中创建,由系统管理员拥有。
33、在SQLServer中,更改密码的系统存储过程名是sp_password。
34、利用SqlConnection对象连接数据源后,就可以读出数据,具体实现方法是利用SqlCommand对象来对要访问的数据库执行T-SQL语句或存储过程。
35、dbo代表的是数据库拥有者。
36、对于永远禁止访问SQLServer的用户货组的登录账户,可以使用系统存储过程
37、用户对数据库中的表、存储过程、视图等对象的操作权限属于对象权限。
二、单选题参考
1、在DBS中,DBMS和OS之间的关系是(B)。
A.相互调用B.DBMS调用OSC.OS调用DBMSD.并发运行
2、下面对“关系模型”的叙述中,不正确的说法是(B)。
A.关系模型的数据结构就是关系B.关系模型中属性的顺序不能任意改变
C.关系模型不允许在关系中出现两条完全相同的元组
D.关系模型具有三类完整性约束
3、在关系模式R(A,B,C)中,
F={(A,B)→C,B→C},则R最高达到(
A)。
A.1NFB.2NFC.3NF
D.BCNF
4、在数据库系统中,日志文件用于(D)。
A.保障事务的并发性B.保障数据的安全性
C.检测系统的死锁D.数据库故障的恢复
5、已知有如下SQL语句:
DECLARE@namechar(20),@scorefloat
SELECT@name='
Helen:
'
,@score=87.5
如果输出格式为'
87.5'
,则合适的SQL输出语句为(A)。
A.PRINTRTRIM(@name)+CONVERT(varchar,@score)B.PRINT@name+CONVERT(varchar,@score)C.PRINTLTRIM(@name)+CONVERT(varchar,@score)D.PRINTRTRIM(@name)+@score
6、下面对“关系模型”的叙述中,不正确的说法是(B)。
7、下面对数据库三级模式结构的叙述中,不正确的是(C)。
A.三级模式结构可提供数据独立性
B.三级模式结构通过两级映像来实现数据独立性
C.模式做了修改,用户的应用程序必须修改
D.内模式做了修改,模式不必修改
8、不属于DBA职责的是(D)。
A.模式定义B.对数据库的权限管理
C.完整性约束D.查看或修改数据库中的数据
第9、10题是基于如下两个关系,其中雇员信息表关系EMP的主键是雇员号,部门信
10、若执行下面列出的操作,哪个操作不能成功执行?
(
息表关系DEPT的主键是部门号。
雇员号
雇员名
部门号
工资
部门名
地址
下0面0列1出
的张操山作,哪
个操02作不
能成20功0执0行
?
01D
业)。
务部
1号楼
EM0P10中删
除王行宏达(‘
010王0'
1宏,达‘
'
1,2‘0001
120
0)02
销售部
2号楼
EM0P56中插
入马行林生(‘
102赵0'
2敏,‘'
‘10010'
1500)
03
服务部
3号楼
EM1P01中雇
员赵号敏=‘
056的0'
工4资改
为15010600
元
04
财务部
4号楼
05
部门信息表DEPT
C)。
将EMP
雇雇员员号信息=‘表1
从在将
9、若执A.B.C.D.
A.从DEPT中删除部门号=‘03的'
行
B.在DEPT中插入行(‘06,'
‘计划部'
,‘6号楼'
)
C.将DEPT中部门号=‘02的'
部门号改为‘10'
D.将DEPT中部门号=‘01'
的地址改为‘5号楼'
三、需要掌握的名词
1、超键:
能惟一标识元组的属性或属性集,称为关系的超键。
2、数据独立性:
在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受
影响。
数据独立性分成物理数据独立性和逻辑数据独立性两级。
3、模式/内模式映象:
用于定义概念模式和内模式之间数据结构的对应性。
4、行列子集视图:
若一个视图是从单个基本表导出的,并且只是去掉了基本表的某些行和某些列,但保留了主码,我们称这类视图为行列子集视图。
5、日志文件:
日志文件是按时间顺序记录的数据库所有更新信息,以备发生故障时用于数据恢复。
6、DB:
是长期存储在计算机内、有组织的、统一管理的相关数据的集合。
7、主数据文件:
是数据库的起点,其中包含数据库的初始信息,记录数据库所拥有的文件指针。
8、事务:
数据库系统的一个操作系列,这些操作或者都做,或者都不做,是一个不可分割的工作单位。
9、角色:
是为了方便权限管理而设置的管理单位,它是一组权限的集合。
10、实体:
客观存在、可以相互区别的事物称为实体。
11、实体完整性规则答:
实体的主键值不允许是空值。
12、并发控制:
控制多个用户如何同时访问和更新共享数据而不会彼此冲突。
13、差异备份:
是指将从最近一次完全数据库备份以后发生改变的数据进行备份。
14、身份验证:
是指确定登录SQLServer的用户的登录账户(也称为“登录名”)和密码是否正确,。
15、触发器:
是一种对表进行插入、更新、删除的时候会自动执行的特殊存储过程。
16、概念模式:
数据库中全部数据的整体逻辑结构的描述。
17、模式/内模式映象:
18、行列子集视图:
若一个视图是从单个基本表导出的,并且只是去掉了基本表的某些行和某些列,但保留了主码,我们称这类视图为行列子集视图。
19、数据独立性:
在数据库技术中,数据独立性是指应用程序和数据之间相互独立,不受影响。
20、分布式数据库:
分布式数据库是由一组数据组成的,这组数据分布在计算机网络的不同计算机上,网络中的每个结点具有独立处理的能力(称为场地自治),可以执行局部应用。
同时,每个结点也能通过网络通信子系统执行全局应用。
分布式数据库的核心管理软件称为分布式数据库管理系统。
四、需要掌握的简答问题
1、简述当数据库发生介质故障或遭受病毒破坏后恢复的过程?
答:
(1)重装转储的后备副本到新的磁盘,使数据库恢复到转储时的一致状态。
(2)在日志中找出转储以后所有已提交的事务。
(3)对这些已提交的事务进行REDO处理,将数据库恢复到故障前某一时刻的一致状态。
2、简述DataSet对象的功能。
DataSet对象的功能是使从数据源中检索到的数据在内存中缓存,它提供一个内存驻留表示形式,包括一些数据表在内的数据以及表之间的关系。
DataSet是ADO.NET的断开式数据库操作的核心组件,无论数据源是什么,它都会提供一致的关系编程模型。
3、什么是主键约束?
什么是惟一约束?
两者有什么区别?
主键约束:
有一列或列的组合,其值能唯一的标识表中的每一行。
唯一约束:
不允许数据库表在指定列上具有相同的值,但允许有空值。
区别:
一个表可以定义多个唯一约束,只能定义一个主键约束;
空值得列上可以定义唯一约束,不能定义主键约束。
4、关系数据模型的优缺点各有哪些?
优点:
关系模型与非关系模型不同,它是建立在严格的数据概念基础上的
(2)关系
模型的概念单一(3)关系模型的存取路径对拥护透明,从而具有更高的数据独立性,更好的安全保密性,也简化了程序员的工作和数据库开发设计的工作。
缺点:
由于存取路径对用户透明,查询效率往往不如非关系数据模型。
因此,为了提高性能,必须对育凝固的查询请求进行优化,增加了开发数据库管理系统的负担。
5、在构造E-R图时,实体和属性之间没有形式上可以截然的界限,简述它们划分的原则。
(1)作为属性,不能再具有需要描述的性质。
(2)属性必须是不可分的数据项,不能包含其他属性。
(3)属性不能于其他实体具有联系,即E-R图中所表示的联系是实体之间的联系。
6、创建索引有什么优点和缺点?
答:
索引在数据库中的作用类似于目录在书籍中的作用,用来提高查找信息的速度。
使用索引查找数据,无需对整表进行扫描,可以快速找到所需数据。
索引需要占用数据表以外的物理存储空间。
创建索引和维护索引要花费一定的时间。
当对表进行更新操作时,索引需要被重建,这样降低了数据的维护速度。
7、什么是触发器?
触发器有什么作用?
触发器是一类特殊的存储过程,不能被直接调用,也不传递或接受参数
作用:
(1)维护不可能在表创建时刻通过声明性约束进行的复杂的完整性约束限制。
(2)通过记录所进行的修改以及谁进行了修改来审计表中的信息。
(3)当表被修改的时候,自动给其他需要执行操作的程序发信号。
8、简述视图的基本特征?
视图是关系数据库系统提供给用户以多种角度数据库中数据的重要机制。
使徒是从一个或几个基本表导出的表,它与基本不同,是一个虚表,数据库只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。
基本表中数据发生变化,从视图中查询出的数据也就随着之改变了,视图一经定义,就可以和基本表一样被查询、被删除,可以爱一个视图之上在定义新的视图,但对视图的更新操作则有一定的限制。
7、在发生介质故障和遭受病毒破坏时,磁盘上的物理数据库会遭到毁灭性破坏,简述恢复过程。
具体步骤如下:
(1)重装转储的后备副本到新的磁盘,使数据库恢复到转储时的一致状态。
(2)在日志中找出转储以后所有已提交的事务。
(3)对这些已提交的事务进行REDO处理,将数据库恢复到故障前某一时刻的一致状态。
9、事务中的提交和回滚是什么意思?
事务中的提交(COMMIT)是提交事务的所有操作。
具体说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束。
事务中的回滚(ROLLBACK)是数据库滚回到事务开始时的状态。
具体地说就是,在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的更新操作全部撤消,使数据库回滚到事务开始时的状态。
10、试述DBMS的主要功能。
(1)数据库的定义功能
(2)数据库的操纵功能(3)数据库的保护功能
(4)数据库的存储管理(5)数据库的维护功能(6)数据字典
11、简述数据完整性的作用。
答:
数据完整性是指数据的精确性和可靠性。
它它的作用是防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息。
五、数据查询题参考
1、对于JXGL数据库的三个基本表
S(SNO,SNAME,SEX,AGE,SDEPT)
SC(SNO,CNO,GRADE)
C(CNO,CNAME,CDEPT,TNAME)
试用T-SQL查询语句表达下列查询:
(1)查询年龄大于20岁的男学生的学号和姓名。
SELECTSNO,SNAME
FROMS
WHERESEX='
M'
ANDAGE>
20
(2)查询学号为S6的学生所学课程的课程名和任课教师名。
SELECTCNAME,TNAME
FROMSJOINSCONS.SNO=SC.SNOANDS.SNO='
S6'
JOINCONSC.CNO=C.CNO
(3)查询至少选修两门课程的学生学号。
selectSNO,count(CNO)as选修门数
fromsc
groupbySNOhavingcount(CNO)>
1
(4)求“王志强”老师所授课程的每门课程的学生平均成绩。
SELECTSC.CNO,AVG(GRADE)
FROMSCJOINCONSC.CNO=C.CNOANDTNAME='
王志强'
GROUPBYSC.CNO
(5)把“张成民”同学在SC中的选课记录全部删去。
DELETE
FROMSC
WHERESNOIN(SELECTSNO
WHERESNAME='
张成民'
(6)利用T-SQL语句声明一个游标,查询S表中所有男生的信息。
DECLARES_CursorSCROLLCURSOR
FORSELECT*
(7)创建一个存储过程PV_GRADE,输入一个学生姓名,输出该学生所有选修课程的平均成绩。
CREATEPROCEDUREPV_GRADE
@S_NAMECHAR(8)=NULL,@S_AVGREALOUTPUTAS
SELECT@S_AVG=AVG(GRADE)
FROMSJOINSCONS.SNO=SC.SNOANDSNAME=@S_NAME
2、对于JXGL数据库的三个基本表
(1)查询计算机科学系(CS)、数学系(MA)和信息系(IS)学生的姓名和性别。
SELECTSNAME,SEX
WHERESDEPTIN('
CS'
'
MA'
IS'
(2)查询选修了课程号为“C3”课程的学生的学号及其成绩,查询结果按分数的降序排列。
SELECTSNO,GRADE
WHERECNO='
C3'
ORDERBYGRADEDESC
(3)查询出选课人数超过8人的课程号。
SELECTCNOAS'
课程号'
COUNT(SNO)AS'
人数'
FROMSC
GROUPBYCNO
HAVINGCOUNT(SNO)>
=8
(4)查询每个学生及其选修课程的成绩情况(含未选课程的学生信息)。
SELECTS.*,CNO,GRADE
FROMSLEFTJOINSC
ONS.SNO=SC.SNO
(5)利用子查询查询选修了“C3”号课程的学生的姓名和所在专业。
SELECTSNAME,SDEPT
WHERESNOIN
(SELECTSNO
(6)建立数学系(MA)学生的视图V_MA,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生。
CREATEVIEWV_MA
AS
SELECTSNO,SNAME,AGE
WHERESDEPT='
WITHCHECKOPTION
(7)为S表创建一个DELETE类型的触发器DEL_COUNT,删除数据时,显示删除学生的个数。
CREATETRIGGERDEL_COUNT
ONS
FORDELETE
DECLARE@COUNTVARCHAR(50)
SELECT@COUNT=STR(@@ROWCOUNT)+'
个学生被删除'
SELECT@COUNT
RETURN
六、关系模式设计参考
1、设有关系模式R(职工编号,日期,日营业额,部门名,部门经理),该模式统计商店
里每个职工的日营业额,以及职工所在的部门和经理信息。
如果规定:
每个职工每天只有一个营业额;
每个职工只在一个部门工作;
每个部门只有一个经理。
试回答下列问题:
(1)根据上述规定,写出模式R的基本FD和候选键。
(2)说明R不是2NF的理由,并把R分解成2NF模式集。
解:
(1)基本的FD有三个:
(职工编号,日期)→日营业额
职工编号→部门名
部门名→部门经理
R的关键码为:
(职工编号,日期)。
(2)R中有两个这样的FD:
(职工编号,日期)→(部门名,部门经理)
职工编号→(部门名,部门经理)
可见前一个FD是局部依赖,所以R不是2NF模式。
R应分解Rl(职工编号,部门名,部门经理)
R2(职工编号,日期,日营业额)
此处,Rl和R2都是2NF模式。
2、设关系模式R(ABCD),F是R上成立的FD集,F={AB→CD,A→D}。
(1)试说明R不是2NF模式的理由。
(2)试把R分解成2NF模式集。
⑴从已知的函数依赖集F,可知R的候选键是AB。
另外,由AB→CD可推出AB→D,再由A→D可知AB→D是部分(局部)函数依赖,因此R不是2NF模式。
⑵如果将R分解成{AD,ABC},则是2NF模式集。
3、设有关系模式:
学生修课管理(学号,姓名,所在系,性别,课程号,课程名,学分,成绩)。
设一名学生可以选修多门课程号,一门课程号可以被多名学生选修;
一名学生有唯一的所在系,每门课程号有唯一的课程名和学分。
回答以下问题:
(1)根据上述规定写出关系模式R的基本函数依赖;
(2)找出关系模式R的候选码;
(3)试问关系模式R最高已经达到第几范式?
为什么?
(4)将R分解成3NF模式集。
由本题的语义内容可以得出如下关系模式R的基本函数依赖:
(1)学号(姓名,所在系,性别);
课程号(课程名,学分)
(学号,课程号)成绩(学号,课程号)(姓名,所在系,性别,课程号,学分)
(2)候选码:
学号,课程号
(3)存在部分函数依赖,R达到第一范式
(4)Student(学号,姓名,所在系,性别)
SC(学号,课程号,成绩)
Course(课程号,课程名,学分)
4、设有关系模式:
授课表(课程号,课程名,学分,授课教师号,教师名,授课时数)。
其语义为:
一门课程号有确定的课程名和学分,每名教师有确定的教师名,每门课程号可以由多名教师讲授,每名教师也可以讲授多门课程,每名教师对每门课程号有确定的授课时数。
回答以下问题:
(1)根据上述规定