数据库第8章
- 格式:ppt
- 大小:449.50 KB
- 文档页数:25
数据库系统实现技术1.1 数据库管理系统概述数据库管理系统(Data Base Mangement System DBMS)是在操作系统支持下的一个复杂的和功能强大的系统软件,它对数据库进行统一管理和控制。
1.11 数据库管理系统的基本功能数据定义功能:允许用户使用专门的数据定义语言来对数据库的结构进行描述,包括外模式,模式,内模式的定义,数据库完整性的定义,安全保密的定义,索引的定义,视图的定义等。
这些定义存储在数据字典中,是DBMS运行的基本依据。
数据操作功能:支持用户使用表达能力强且易学易用的数据操作语言或查询语言来表达对数据库中数据所要进行的检索,插入,更新,删除操作,高效的执行用户所表达的对数据库中数据的操作请求。
数据存储和管理功能:支持对大量的,各种类型的数据进行组织,存储和管理工作,包括用户数据,索引,数据字典等的存储管理。
事务管理功能:提供对事物概念的支持和事务管理能力。
支持对数据的并发存取,即多个不同事务同时对数据进行存取,避免同时的访问可能造成的不良后果,并保证数据库具有从多种类型的故障中恢复的能力。
其他功能:包括与网络中其他软件系统的通信功能,一个DBMS与另一个DBMS或文件系统的数据转换功能,异构数据库之间的互访和互操作功能,对新的高级应用提供支持的能力等。
1.12 数据库管理系统的主要部分和各部分的功能数据库系统包括以下三部分:(1)存储管理器:高效的利用辅助存储器来存放数据,并使得数据能够被快速存取。
具体负责外存储器中的数据存储管理和访问,索引的建立和管理,内存中的缓冲区管理等。
(2)查询处理器:高效的执行像SQL这样非常高级的语言表达的数据查询和修改。
具体负责DDL编译,数据安全性定义和安全性控制,数据完整型定义和完整性控制,查询编译,查询优化,查询执行等。
(3)事务管理器:对并发执行的事务进行有效地管理,使之具有ACID特性。
具体负责事务管理,并发控制,日志管理和故障恢复等。
第8章数据库恢复技术1. 试述事务的概念及事务的四个特性。
解:事务是用户定义的一个基本操作序列,这个基本操作序列可以包含一个或者多个数据库的基本操作。
事务所包含的基本操作要么都做,要么都不做,它们构成了一个不可分割的工作单元。
事务具有四个基本特性:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability),简称为ACID特性。
2. 数据库运行中可能产生的故障有哪些?简述不同故障对数据库造成的影响有何不同。
解:数据库运行中可能发生各种各样的故障,大致分为以下几类:事务故障、系统故障、介质故障、其他一些因素导致的故障,如计算机病毒、操作失误等。
不同故障对数据库造成的影响不同,事务故障、系统故障影响事务的正常执行,介质故障和计算机病毒破坏数据库数据。
3. 恢复机制的基本思想是什么?恢复的实现技术有哪些?解:恢复机制的基本思想是:建立冗余数据;利用这些冗余数据实施数据库恢复。
数据转储和登录日志文件是建立冗余数据最常用的技术。
当系统运行过程中发生故障,利用转储的数据库后备副本和日志文件就可以将数据库恢复到故障前的某个一致性状态。
4. 什么是日志文件?日志文件的作用是什么?登记日志文件的原则是什么?解:日志文件是用来记录事务对数据库的更新操作的文件,是系统运行的历史记载。
日志文件的作用是:用来进行事务故障恢复和系统故障恢复,协助后备副本进行介质故障恢复。
登记日志文件必须要遵循两条原则:一是登记的次序严格按并发事务执行的时间次序。
二是必须先写日志文件,后写数据库。
5. 试述事务故障、系统故障、介质故障的恢复策略和方法。
解:●事务故障的恢复:事务故障的恢复是由系统自动完成的,对用户是透明的。
其过程如下:(1) 反向扫描文件日志(即从最后向前扫描日志文件),查找该事务的更新操作。
(2) 对该事务的更新操作执行逆操作。
(3) 继续反向扫描日志文件,查找该事务的其他更新操作,并做同样处理。
Removed_数据库第8-11章习题第8章数据库编程⼀、选择题1、修改存储过程使⽤的语句是()。
A. ALTER PROCEDUREB. DROP PROCEDUREC. INSERT PROCEDUED. DELETE PROCEDUE2、创建存储过程的语句是()。
A. ALTER PROCEDUREB. DROP PROCEDUREC. CREATE PROCEDUED. INSERT PROCEDUE3、下⾯()组命令,将变量count值赋值为1。
A.DECLARE @countSELECT @count=1B.DIM count=1C.DECLARE count SELECT count=1D.DIM @count SELECT @count=14、在SQL Server 中删除存储过程⽤()。
A.ROLLBACK B. DROP PROC C.DELALLOCATE D. DELETE PROC10.在SQL Server 编程中,可使⽤()将多个语句捆绑。
A.{} B. BEGIN-END C.( ) D. [ ]⼆、填空题1、在T-SQL编程语句中,WHILE结构可以根据条件多次重复执⾏⼀条语句或⼀个语句块,还可以使⽤()和 CONTINUE 关键字在循环内部控制 WHILE 循环中语句的执⾏。
2、存储过程是存放在()上的预先定义并编译好的T-SQL语句。
3、游标是系统为⽤户开设的⼀个(),存放SQL语句的执⾏结果第9章关系查询处理和查询优化课后作业:P275,2题答案:12、事务的原⼦性是指。
A.事务中包括的所有操作要么都做,要么都不做B.事务⼀旦提交,对数据库的改变是永久的C.⼀个事务内部的操作及使⽤的数据对并发的其他事务是隔离的D.事务必须是使数据库从⼀个⼀致性状态变到另⼀个⼀致性状态3、事务的⼀致性是指。
A.事务中包括的所有操作要么都做,要么都不做B.事务⼀旦提交,对数据为的改变是永久的C.⼀个事务内部的操作及使⽤的数据对并发的其他事务是隔离的D.事务必须是使数据库从⼀个⼀致性状态变到另⼀个⼀致性状态4、事务的隔离性是指。