数据库简答题_第1页
数据库简答题_第2页
数据库简答题_第3页
数据库简答题_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

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

文档简介

1、.第一章1.8. List four significant differences between a file-processing system and a DBMS.答:1.两者都包含了一系列的数据以及一些可用于操作数据的程序。数据库管理系统能够协调该数据的物理结构以及逻辑结构。而对于文件处理系统而言,只有物理结构。2.数据库管理系统可以确保所有经授权访问的程序能够访问到数据的物理部分,因此可以减少数据冗余 。在文件处理系统中,当一个数据被一个程序所写入的时候,它有可能不能被另一个程序所读取。3.数据库管理系统提供灵活的访问方法(例如查询) ,而文件处理系统则要按照事先确定的方法去访问

2、数据(例如程序编译)4.数据库管理系统可以让多个用户在同一时间对同一数据进行操作。而文件处理系统通常是允许一个或多个程序在同一时间访问不同的数据。在文件处理系统中,当且仅当两个文件在同一时间对同一个文件进行只读操作时才能并发进行这个操作。1.9 Explain the concept of physical data independence, and its importance in database systems.答:物理数据独立是指 能够应用程序不受影响的情况下 修改物理模式。 物理层的实现比较复杂,物理数据独立之后, 当逻辑层需要修改某些数据的时候, 就不需要设计复杂的物理结构,

3、减轻了逻辑层的负担。1.10 List five responsibilities of a database-management system. For each responsibility, explainthe problems that would arise if the responsibility were not discharged.答: 1.与文件管理器进行交互 。如果没有了,数据库管理什么都做不了,包括数据存储以接受。2.完整性约束 。缺少之后,一致性约束就没法满足。3.安全性。 没有安全性管理,未经授权的用户可能会访问到数据库里面的数据以及已经拥有部分授权的用户访问

4、到未经授权的部分。4 并发执行 。5.备份和恢复 。1.13 What are five main functions of a database administrator?答: 1.模式 定义2.存储结构 以及 存取方 式定义3.模式以及物理组织的修改4.数据 访问授权5.日常 维护1.14 Explain the difference between two-tier and three-tier architectures. Which is better suited for Web applications? Why?答:区别: 两层体系结构中, 应用程序驻留在客户机上面, 通过查

5、询语言表达式来调用服务器上的数据库系统功能。在三层体系结构中,客户机只作为一个前端并且不包含任何直接的数据库调用。客户端通常通过一个表单界面与应用服务器进行通信。 而应用程序与数据库通信以访问数据。三层体系结构更适合Web 应用。 可以减轻客户机的负荷。第二章2.10 Consider the advisor relation shown in Figure 2.8, with s id as the primary key of advisor.Suppose a student can have more than one advisor. Then, would s id still b

6、e a primary key of the advisor relation? If not, what should the primary key of advisor be?答:不是。因为一个学生可能会被多个导师指导,用导师无法区分学生。主码应该是i_id和 s_id。2.11 Describe the differences in meaning between the terms relation and relation schema. (关系和关系模式在意义上的区别)答:关系模式 (Relational Scheme):它由一个关系名以及它所有的属性名构成。它对应二维表的表头,

7、是二维表的构成框架(逻辑结构)。关系 (Relation):表示多个实体之间的相互关联,每一张表称为该关系模式的一个具体关系。它包括:关系名,表的结构和表的数据(元组)。2.14 List two reasons why null values might be introduced into the database.答:当确切的值不存在或者不知道的时候,空值就可能会被引入。第四章4.17 Explain why, when a manager, say Satoshi, grants an authorization, the grant should be done by the man

8、ager role, rather than by the user Satoshi.答:考虑一下, 如果用户 Satoshi 并不是一个经理但是可以授予权限, 当他离开公司的时候,上层回收原属于他的所有权限,尽管有些人的工作尽管没变,但是权限也一样被回收。如果权限授予是由经理完成的,从Satoshi 里回收权限的时候就不会发生级联撤销。在授权图图里面,我们可以把经理以及用户当成是一个结点。如果权限是由经理授予,从 Satoshi 那里回收权限是不会对经理造成任何影响的。4.18 Suppose user A, who has all authorizations on a relation

9、r, grants select on relation r to public with grant option. Suppose user B then grants select on r to A. Does this cause a cycle in the authorization graph? Explain why.答:会的。 A 授予权限给所有用户,会产生一条从A 到所有用户的边,这就意味着每个人都拥有权限, B 也一样具有。这也意味着public 到系统里面所有的用户都会有一条边。如果没有的话,就不会存在一条从授权图的根到代表该用户定点的路径(用户具有授权的充要条件)。

10、 B 可以进行权限转移,当B 把权限转移给A 的时候,就会有一条从B 到 A 的边,也就构成了环。第五章5.21 Suppose there are two relations r and s, such that the foreign key B of r references the primary key A of s. Describe how the trigger mechanism can be used to implement the on delete cascade option, when a tuple is deleted from s.答:有一些关系的主码被一些

11、其他关系作为外码被参照,我们为这些关系定义了触发器。每当一条元组从被参照的关系中删除时,触发器就会被激活。触发器的动作是搜索所有参照的关系后, 如果外码的值与被参照关系中被删除元组的主码的值相等的话,就删除这些外码值所在的元组。这一类触发器将会和级联删除操作拥有相同的作用。5.22 The execution of a trigger can cause another action to be triggered. Most database systems.place a limit on how deep the nesting can be. Explain why they migh

12、t place such a limit答:一个触发器里面写的东西有可能会造成一个无终止的递归。举个例子,在一个关系上,有一个触发器是定义在插入操作之前的, 而这个触发器尝试插入另一条记录到这个相同的关系里面。一般来说, 想静态地确认和禁止这样的触发器产生是很困难的, 因此,数据库系统在执行过程中会设置一个嵌套的触发器调用的深度限制。第七章7.14 Explain the distinctions among the terms primary key, candidate key, and superkey.答:超码: 是一个或者多个属性的集合,这些属性的组合可以使之在一个关系中唯一地标识一

13、个元组。一个超码可能包含有无关属性。也就是说,当K 是超码时, K 的任何父集也是超码。候选码: 超码中, 若它们的任意真子集都不能成为超码,这样的最小超码也称为候选码主码:在一个关系中,用于区分不同元组的候选码。第八章8.30 List the three design goals for relational databases, and explain why each is desirable.答:三个目标为:1.无损分解。 2.保持依赖。 3.最小数据冗余可以让我们拥有一个更精确的数据库, 对更新的数据库进行正确查询以及花费更小的数据库存储空间。8.31 In designing a

14、 relational database, why might we choose a non-BCNF design?答:这是因为BCNF有时候是不能保持着函数依赖的,因此,我们会选择另一种模式(特别是 3NF),这样在检查更新时的数据依赖会更加容易。第十章10.9 解释为什么在磁盘块上分配记录的策略会显著影响到数据库系统的性能。答:如果我们分配相关记录到磁盘块中, 我们就可以通过对磁盘的一次请求就可以检索到更多或者是全部的所求的记录。 磁盘的存取问题是数据库中的瓶颈, 由于这个分配策略减少了对磁盘存取的操作次数,因此提高了数据库系统的性能。第十二章12.16 列出 ACID 特性,解释每一

15、特性的用途答: ACID特性:原子性:事物的所有操作在数据库中要么全部正确反映出来,要不完全不反映。一致性:隔离执行事务时,可以保持数据库的一致性隔离性: 尽管多个事务是并发进行的,但是这个可以保证每个事务都感觉不到系统中有其他事务在并发执行。持久性: 一个事务成功之后, 它对数据库的改变是必须永久的, 即使出现系统故障。.12.17 事务从开始执行到提交或者终止,期间要经过几个状态。列出所有可能出现的事务状态序列,并解释原因。答:有三种可能性:1. 活动 部分提交 提交:这是一个正常事务所会发生的顺序。在执行完它的所有语句之后,它会进入部分提交状态,在足够的恢复信息被写入磁盘之后,就会进入最

16、终的提交状态。2. 活动 部分提交 中止:在执行事务的最后一条语句的时候,就会进入到部分提交状态。在足够的恢复信息被写入磁盘之前可能会有硬件出错,然后损坏内存里面的内容,这就会导致数据库什么都不能做,最后事务进入中止状态。3. 活动 失败 中止:在事务开始执行之后,在某些时刻发现一些正常的执行操作不能继续(或者是内部程序或者是外界的因素) ,事务就会进入失败的状态,然后回滚,进入中止状态。12.18 解释串行调度和可串行调度的区别答:属于同一事务的指令在调度中紧挨在一起就叫做串行调度。可串行化调度有一个比较弱的限制就是, 有些串行调度必须要等价。 这里有两个调度等价的定义: 冲突等价以及视图等

17、价。12.22. 为什么数据库系统支持事务的并发执行, 尽管需要额外编程工作来确保并发执行不会引起任何问题答:事务进程系统通常可以让多个事务并发执行。我们容易强调这个更容易事务串行执行。然而,下面有两个更好地理由来解释:第一,提高吞吐量和资源利用率。一个事务由多个步骤组成。一些设计I/O 活动;还有一些涉及 CPU活动。在计算机系统中 CPU与磁盘可以并行运作。因此, I/O 活动可以与 CPU处理并行进行。利用 CPU 和 I/O 系统的并行性,多个事务可并行执行。当一个事务在一张磁盘上进行读写时,另一个事务可以在CPU上运行,第三个事务又可在另一张磁盘上进行读写。这样就可以增加吞吐量,同时利用率也提高了。第二,减少等待时间。系统中可能运行着各种各样的事务,有些时间长,有些短。如果各事务针对数据库的不同部分进行操作,让它们并发执行会更好,它们之间可以共享CPU周期与磁盘存取。可减少执行事务时的不可预测的延迟以及平均响应时间。12.30 稳定存储器是不可能实现的1. 解释为什么?2.数据库如何看待?答: 1.是由于所有的存储设备都是由硬件构成。所有硬件对于机械以及电子设备故障来说都是很脆弱的。2.数据库把数据同时写入多个存储器之中,如果一个设备崩溃了,还有其他可用的设备有备份,就不会说数据会丢失。12.31 如果与

温馨提示

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

评论

0/150

提交评论