数据库系统概论复习题2020-11-30

数据库复习题

1、简述数据库、数据库系统、数据库管理系统三者之间的关系。
答:
①数据库(DB)是长期储存在计算机内,有组织的、可共享的大量数据的集合;
②数据库管理系统(DBMS)是数据库系统的核心组成部分,它是介于用户和操作系统之间的一层数据管理软件,是用户和数据库的接口;
③数据库系统是带有数据库的计算机系统,一般由数据库、数据库管理系统(DBMS)、相应的硬件、软件和各类人员(如数据库管理员DBA)组成。
2、DBMS的主要功能有哪些?
答:
①数据定义:
②数据组织、存储和管理:
③数据操纵:
④数据库的事务管理和运行管理:
⑤数据库的建立和维护:
3、什么叫数据与程序的物理独立性?什么叫数据与程序的逻辑独立性?为什么数据库系统具有数据与程序的独立性?
答:
①物理独立性:指用户的应用程序与数据库中数据的物理存储相互独立,当数据的物理存储改变时,应用程序可以不变。
②逻辑独立性:指用户的应用程序与数据库的逻辑结构相互独立,当数据的逻辑结构改变时,用户程序可以不变。
③有了数据库,应用程序对数据的访问通过DBMS进行,程序不能直接操作数据本身,而且DBMS提供了两层映像机制保证了DBS中数据的逻辑独立性与物理独立性。
4、数据模型由哪几部分组成?各部分的功能如何?
答:
①数据结构:数据库组成对象与对象之间的联系,是对系统静态特性的描述;
②数据操作:数据库中各种对象的实例允许执行的操作的集合,是对系统特性的描述;
③完整性约束条件:是给定的数据模型中数据及其联系所具有的制约和依存规则,用于限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效和相容。
5、数据库系统三级模式结构
答:
①外模式:用户能够看得见和使用的局部数据的逻辑结构和特征的描述,是用户的数据视图,是与某一应用有关的数据的逻辑表示;
②模式:是数据库全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图,模式描述的是数据的全局逻辑结构;
③内模式:是数据在数据库系统内部的表示,即对数据的物理结构和存储方式的描述。
6、专门的关系运算符有哪些?各自完成什么功能?
答:
①选择:在关系R中选择满足给定条件的诸元素;
②投影:在关系R中选择出若干属性列组成新的关系;
③连接:从两个关系的笛卡尔积中选取属性间满足一定条件的元组;
④除运算:设关系R除于关系S的结果为关系T,则T包含所在R中但不在S中的属性及值,且T的元组和S的元组的所有组合都在R中。
7、SQL语言有几种使用方式,各自在什么情况下使用?
答:两种
①交互式:在终端交互下使用;
②嵌入式:能嵌入到高级语言中,供程序员设计程序。
8、什么是视图?它有什么优点?
答:
①视图是从一个或几个基本表中导出的表,它像一个窗口,透过它可以看到数据库中自己感兴趣的数据及其变化;
②优点:
简化用户的操作;
可以令用户从多角度看待同一数据;
对重构数据库提供一定程度的逻辑独立性;
对机密数据提供安全保护;
适当利用视图可以更加清晰地表达查询。
9、试述规范化的概念和1NF、2NF、3NF、BCNF之间有何关系?
答:
①规范化:一个低一级的范式的关系模式通过模式分解可以转换为若干个高一级范式的关系模式的集合,这个过程就叫做规范化;
②关系:BCNF属于3NF属于2NF属于1NF
10、1NF→2NF→3NF→BCNF→4NF的转化过程分别做了那些工作?
答:
①1NF→2NF:消除非主属性对码的部分函数依赖;
②2NF→3NF:消除非主属性对码的传递函数依赖;
③3NF→BCNF:消除非主属性对码的部分函数和传递函数依赖;
④BCNF→4NF:消除非平凡且非函数依赖的多值依赖。
11、试述数据库设计的基本步骤。完成每个步骤的方法、任务和要求?
答:
①需求分析阶段:需求收集和分析,得到数据字典和数据流图;
②概念结构设计阶段:对用户需求综合、归纳和抽象,形成概念模型,用E-R图表示;
③逻辑结构设计阶段:将概念结构转换为某个DBMS所支持的数据模型;
④物理结构设计阶段:为逻辑数据模型选取一个最适合应用环境的物理结构;
⑤数据库实施阶段:建立数据库,编制和调试应用程序,组织数据入库,程序试运行;
⑥数据库运行和维护阶段:对数据库系统进行评价、调整和修改。
12、什么是事务?事务的提交和回滚是何含义?
答:
①事务是用户定义的一个数据库操作序列,这些操作要么全做,要么全不做,是一个不可分割的工作单位。

事物的提交:COMMIT表示提交,即在提交事务的所有操作,具体地说就是将事务中所有对数据库的更新写回到磁盘上的物理数据库中去,事务正常结束;
事务的回滚:ROLLBACK表示回滚,即在事务运行的过程中发生了某种故障,事务不能继续执行,系统将事务中对数据库的所有已完成的操作全部撤销,或回滚到事务开始时的状态
13、在DBMS中为什么要加入数据库恢复功能?
答:
尽管在DBS中采取各种措施防止数据库的安全性和完整性被破坏,保证事务的正确执行,但是计算机系统中硬件故障、软件错误,操作员的事务或恶意的破坏是不可避免的,这些故障可能会造成事务非正常中断,影响数据库中数据的正确性,破坏数据库,是数据库中全部或部分数据丢失 ,所以必须具有数据库恢复功能。
14、在登记日志文件时为什么先写日志文件后写数据库?
答:
①若先写数据库,在日志文件中没有登记这个修改,则以后就无法恢复这个修改;
②若先写日志,没有修改数据库,按日志文件恢复时只多执行一次不必要的UNDO操作,并不会影响数据库的正确性。
15、为什么要引入具有检查点的恢复技术?
答:
①搜索整个日志文件要耗费大量时间;
②重做处理、重新执行耗费大量时间。
引入具有检查点的恢复技术是为了改善恢复效率。
16、设有两个事务T1和T2,它们的并发操作如下图,对这个并发操作给出评价:
T1 _____ T2
①读X=48
② 读X=48
③X=X+10写回X
④ X=X-2写回X
答:
事务T1,T2读入同一数据X=48并对其进行了修改,但是T2提交的结果破坏了T1提交的结果,导致T1的修改被丢失,这种情况称为丢失修改,会导致数据库的不一致性。
为了防止这种情况的发生,应该用封锁技术对并发操作加以控制。
17、在数据库中为什么要有并发控制?
答:
当多个用户并发的存取数据库时就会产生多个事务同时存取同一数据的情况。若对并发操作不加控制就可能会存取和存储错误的数据,破坏事务的一致性和数据库的一致性,所以必须要有并发控制机制。
18、怎样进行系统故障的恢复?
答:
①正向扫描日志文件,找出在故障发生前已经提交的事务队列和未完成的事务队列;
②对撤销队列中的各个事务进行撤销处理;
③对重做队列中的事务进行重做处理;
19、试述活锁的产生原因和解决办法。
答:
①原因:当一系列封锁不能按照先后顺序执行时,就可能导致一些事务无限期等待某个封锁,从而导致活锁;
②解决方法:采用先来先服务的策略,当多个事务请求封锁同一数据对象时,封锁子系统按请求封锁的先后次序对事务排队,数据对象上的锁一旦释放就批准申请队列中的第一个事务获得锁。
20、解释数据库完整性是何含义?
答:
数据库的完整性指数据的正确性和相容性。
数据的完整性是为了防止数据库中存在不符合语义的数据,也就是防止数据库中存在不正确的数据。
21、解释数据库安全性是何含义?它与数据库完整性有何区别?
答:
数据库的安全性指保护数据库防止不合法的使用所造成的的数据泄露、更改或破坏。
区别:
完整性是为了防止数据库中存在不符合语义的数据;
安全性是为了防止恶意的破坏和非法的存取。
22、试述数据库安全性控制的方法
答:
①用户标识和鉴别
②存取控制
③视图机制
④审计
⑤数据加密
23、数据库中死锁产生的原因和解决死锁的办法。
答:
原因:两个或者多个事务都已封锁了一些数据对象,然后又都请求已为其它事务封锁的数据对象加锁,从而出现死等。
解决办法:
①预防死锁
②死锁诊断和解除
24、试述日志文件的作用。
答:
进行事务故障的恢复
进行系统故障的恢复
协助后备副本进行介质故障恢复
25、为什么在DBMS中需要提供数据重组织的功能?
答:
数据库运行一段时间后,由于记录不断增、删、改,会使得数据库的物理存储情况变坏,降低了数据的存取效率,数据库性能下降,这就需要对数据库进行重组织。

来源url
栏目