
1B 2C 3B 4C 5D 6C 7C 8D 9C 10A
11A 12A 13A - 不知道14。乙evogue2006 - 10 - 24 11点47分01秒1516A 17B 18A 19D 20C
试述事务的概念和事务的四个特性。
A:
事务是一个用户定义的数据库 *** 作序列,这些 *** 作要么全部做或不做的整体,是一个不可分割的工作单元。
事务有四个特点:原子性(原子性),一致性(一致性),隔离(隔离)和持久性(Durability)。这四个特点也被称为ACID属性。
原子性:事务数据库的逻辑工作单元,该交易包括所有的 *** 作,无论是做还是不做。
一致性:事务执行的结果必须更改数据库从一个一致状态转换到另一个一致的状态。
隔离:一个事务的执行不能被其他事务的干扰。一个事务内的 *** 作和使用其他并发事务的数据分离出来,并发执行的个别交易不能互相干扰。
持续性:持续性的,也被称为永久(持久性),指的到交易提交其数据存储在数据库中的变化应该是永久性的。接下来的 *** 作或故障不应该有任何影响其执行结果。
2。为什么事务非正常时间的推移,会影响数据库中数据的正确性,举了一个例子。
A:
事务的执行结果必须更改数据库从一个一致状态转换到另一个一致状态。如果出现故障的数据库系统的 *** 作,一些尚未完成的交易被迫中断,这些未完成的交易的一部分已被写入到物理数据库对数据库所做的更改,然后在数据库中不正确的状态,或者是不一致的状态。
如一个工厂的库存管理系统,它是必要的量Q的某些部分从仓库1仓库2个存储。
你可以定义一个事务T,T包括两个 *** 作; Q1 = Q1-Q,Q2 = Q2 + Q T改变的终止,只有当第一个 *** 作,数据库是不一致Q库存没有理由。
3。数据库中为什么要有恢复子系统?它的功能是什么?
A:
是不可避免的,因为计算机系统的硬件故障,软件错误, *** 作错误和恶意破坏所造成的这些故障从正在运行的事务中发生非正常中断,影响数据库中的数据正确性,而破坏了数据库中,因此,在数据库中的数据的全部或部分损失,因此必须有一个恢复子系统。功能
恢复子系统:数据库从错误状态恢复到一个已知的良好状态(也被称为一致的状态或完整状态)。
4。在数据库中可能出现的故障运行几类?什么故障影响正常执行的交易吗?什么故障破坏数据库中的数据?
A:数据库系统的各种可能发生的故障大致可分为如下几类:
(1)内部交易失败;
(2)系统故障; />(3)介质故障;
(4)计算机病毒。的
交易失败,系统故障和介质故障影响事务的正常执行;介质故障和计算机病毒破坏的数据
库。
5。根据回收技术?
A:
数据转储和登录日志文件是数据库恢复的基本技术。
当一个故障在系统运行过程中,转储数据库的日志文件,你可以将数据库恢复到一致状态,在发生故障之前的备份副本。
6。数据库的转储的意义是什么?各种数据转储方法的比较。
答案:
数据转储是基本的技术,在恢复的数据库。所谓的转储数据库DBA定期复制到磁带或其他磁盘保存。可以重新加载数据库破坏的数据库的备份副本恢复时的状态转储。
静态转储:转储系统 *** 作运行的事务。静态转储,但必须等待用户交易结束之前运行。同样,新的事务必须等待执行转储结束。显然,这将减少数据库的可用性。
动态转储:转储期间允许数据库访问或。动态的转储可以克服静态转储的缺点,它并不需要等待正在运行的用户交易的结束,也不会影响新事务的 *** 作。然而,备份的数据副本结束时的转储和不能保证正确和有效的。 ,因为转储运行在交易过程中可能会一些数据,备份的数据副本是不符合版本的数据库。
为此,我们必须活动期间注册使用dump transaction数据库,以创建一个日志文件(日志文件)。在这样的日志文件的备份副本可以得到正确的数据库状态的时刻。
转储海量转储和增量转储可以分为两种方式。
大规模倾倒每一个转储所有数据库。增量转储每次更新只转储上次转储数据。从恢复的角度来看,大量的转储的备份副本恢复一般更容易。如果该数据库,事务处理,是非常频繁,增量转储方式更实用,更有效。
7。日志文件?为什么要建立一个日志文件?
答案:
(1)日志文件是用来记录交易文件对数据库的更新 *** 作。
(2)建立的日志文件的目的:交易故障恢复系统故障恢复;协助媒体恢复的备份副本。
登记日志文件为什么要写入日志文件后,写入到数据库?
A:
的数据写入到数据库中,两种不同的 *** 作,这个后的日志记录被写入到日志文件中。这两个 *** 作之间可能发生了故障,即这两个写 *** 作只完成了。
先写一个数据库,而不是变化的运行记录中,小数点后不能被恢复这一。如果你写的日志,但没有数据库,恢复执行UNDO *** 作,不影响数据库的正确性。所以一定要确保你写的日志文件,日志记录写入到日志文件中,然后写入到数据库的变化。
9,测试是针对不同的故障恢复策略和方法。 (也就是说,如何进行交易系统故障恢复故障恢复介质恢复?)
A:
交易故障恢复:
事务故障的恢复是自动完成的DBMS ,是对用户透明。
DBMS执行恢复步骤:
(1)反向扫描文件日志(即从最后一次扫描日志文件),则该事务更新 *** 作。
(2)事务的更新 *** 作执行逆 *** 作。关于日志记录更新前值吗?写入到数据库中。
(3)反向扫描日志文件,做同样的。
(4)?下去,直到你读的开始标记本次交易,交易失败恢复完整。
A:
系统故障恢复:
系统出现故障可能会导致数据库处于不一致的状态:
首先,没有完成的交易数据库的更新可能已被写入到数据库中;
已提交的交易数据库的更新可能还留在缓冲区中,并没有写入到数据库。
恢复 *** 作(UNDO)的未竟事业出现故障,重做(REDO)已完成的交易。
恢复步骤:
(1)正向扫描日志文件,以确定该交易已提交在故障发生前队列中(REDO队列的)和未完成的事务队列(UNDO队列)。
(2)UNDO处理队列中的个别交易的。
UNDO处理方法是反向扫描日志文件,更新 *** 作执行相反的 *** 作,每一个UNDO事务迫在眉睫的“价值”(前映像)记录写入到数据库中,然后再更新。
(3)治疗重做重做队列事务。
REDO处理方法:正向扫描日志文件,每个REDO事务重新执行 *** 作的日志文件登记。即将推出的日志记录写入到数据库中的更新值“(后映像)。
分辨率:
步骤(1)如何确定的REDO队列和UNDO队列,请考虑一下吧。 BR />的算法如下:
1)创建两个事务队列:
·UNDO-LIST:需要执行undo *** 作的事务集;
·REDO-LIST:需要执行重做 *** 作事务集;
事务队列最初是空的。
)从日志文件头,正向扫描日志文件
是否有新的开始(遇到BEGIN TRANSACTION)交易钛,钛暂时放入UNDO-LIST队列;
·如果提交的事务(遇到结束事务)TJ TJ从队列undo-list中的REDO-LIST队列;
直到最后的日志文件A:
介质故障恢复:
介质故障是最严重的故障。
恢复方法是重装数据库,然后重做已完成交易的过程是:
(1 )DBA装入最新的数据库备份(从故障时间最近的转储副本),将数据库恢复到一致的状态转储。
(2)DBA的日志文件的副本加载转储结束时间
(3)DBA启动系统恢复命令来完成还原的DBMS的功能,重做已完成的交易。
解析
1)我们假设静态转储的步骤(1)安装数据库的备份副本。
2)如果您使用的是静态和动态转储步骤(1)将数据库的备份副本是不够的,需要同时加载的副本日志文件的转储开始治疗后的时间,以获得正确的数据库的备份副本。
3)(2)步算法来重做已完成的交易:
正向扫描日志文件,以找出识别在故障发生之前提交的交易中,计入的重量队列
B。再次向前扫描日志文件,重做重做队列中的所有交易。即将推出的日志记录写入到数据库中的更新值。
>
10。检查点恢复技术的优势是什么?
A:
测井技术进行数据库恢复,恢复子系统必须搜索日志,以确定哪些事务需要重做,哪些事务需要。一般来说,你需要检查所有的记录。这样做有两个问题:
首先,搜索整个日志将花费大量的时间。
REDO处理的事务实际上写的更新 *** 作数据库恢复子系统又执行这些 *** 作,浪费了大量的时间。
检查点技术,以解决这些问题。
11。师叔检查点的恢复步骤。
①从启动文件的最后一个检查点记录在日志文件中的地址找到最后一个检查点记录在日志文件中找到的地址。
②检查站的检查点记录的建立时间列表中的所有运行的事务ACTIVE-LIST。
创建两个事务队列:
·UNDO-LIST:需要执行undo *** 作的事务集;
·REDO-LIST:集交易需要执行恢复 *** 作;
ACTIVE-LIST暂时到UNDO-LIST队列,REDO队列暂时空。
③从检查点开始正向扫描日志文件
任何新的起点事务钛undo-list中的Ti暂时放置在队列中;
·如果提交事务TJ,TJ移动从UNDO-LIST队列,REDO-LIST队列,直到最后的日志文件;
>④UNDO *** 作执行undo-list中的每一笔交易REDO-LIST中的每个事务执行REDO *** 作。
12。数据库镜像?使用?
答案:
数据库镜像是根据对DBA的要求,自动复制到另一个磁盘上的关键数据在整个数据库或部分。每当主数据库更新时,DBMS自动复制更新后的数据,在过去,DBMS自动保证镜像的一致性
使用数据库镜像的数据和主数据。:
一个用于数据库恢复。当介质故障的镜像磁盘继续提供使用的数据库管理系统自动镜像磁盘数据恢复的数据库,并且不需要关闭系统并重新安装该数据库的副本。
二是要提高无故障,当用户的数据加排他锁来其他用户可以读取的数据的数据库的可用性。镜像数据库,无需等待用户释放该锁。
大工13秋《SQL数据库系统及应用》在线作业2
一、判断题
1 在非聚集索引中,每个索引并不是包含行记录的数据,而是数据行的一个指针。
A 错误
B 正确
正确答案:B
2 每张表可以创建多个聚集索引,每个聚集索引需要仅仅20%的附加空间,以存放该表的副本和索引的中间页。
A 错误
B 正确
正确答案:A
3 索引是与表(或视图)关联的页的集合,用于加速从表中检索或者用于强制实施的唯一性。
A 错误
B 正确
正确答案:B
4 FROM语句用于向已经存在的表中插入新的数据。
A 错误
B 正确
正确答案:A
5 在聚集索引中,叶节点包含基础表的数据页。根节点与叶节点包含有索引行的索引页。
A 错误
B 正确
正确答案:B
6 DELETE语句不仅删除了表中的数据,而且删除该表。
A 错误
B 正确
正确答案:A
7 视图类似基表,包含带有名称的行和列数据,但视图中不存储任何数据,行和列的数据均来于查询所基于的基表中。
A 错误
B 正确
正确答案:B
8 对表数据的插入、修改和删除还可以通过T-SQL语句来进行,与界面 *** 作表数据相比,通过T-SQL语句 *** 作表数据更为灵活,功能更为强大。
A 错误
B 正确
正确答案:B
9 在SQL Server中,索引是按B-Tree 结构进行组织的,B-Tree中的所有结点均称为叶结点。
A 错误
B 正确
正确答案:A
10 T-SQL创建数据库的主要语句是CREATE DATABASE…。
A 错误
B 正确
正确答案:B
二、单选题
1 若要在基本表dept中增加一列CN,可用()语句。
A add table dept(CN char(8))
B add table dept alter(CN char(8))
C alter table dept add CN char(8)
D alter table add dept CN char(8)
正确答案:C
2 您需要显示年龄从18到21的学生的姓名和年龄。学生表xsxx包含列“姓名”和列“年龄”,下面()语句能完成该功能。
A SELECT 姓名, 年龄 FROM xsxx
B SELECT 姓名, 年龄 FROM xsxx WHERE年龄 = 18 OR 年龄 = 21
C SELECT 姓名, 年龄 FROM xsxx WHERE 年龄 BETWEEN 18 AND 21
D SELECT 姓名, 年龄 FROM xsxx WHERE年龄 = 18 AND 年龄 != 21
正确答案:C
3 由于业务量很大,订单表存放了大量的数据。你想查询3年以前的订购信息,下面()语句能够完成该任务。
A select FROM 订单表 WHERE 订购日期< DATEADD( YY, -3, GETDATE() )
B select FROM 订单表 WHERE 订购日期< DATEADD( YY, 3, GETDATE() )
C select FROM 订单表 WHERE 订购日期< GETDATE() - 3
D select FROM 订单表 WHERE 订购日期< GETDATE() + 3
正确答案:A
4 学生表xsxx包含列“姓名”和列“年龄”等,想要按照年龄从大到小顺序查询出学生表的所有信息,下面()语句能完成该功能。
A SELECT FROM xsxx
B SELECT FROM xsxx ORDER BY 年龄 desc
C SELECT FROM xsxx ORDER BY 年龄 asc
D SELECT 姓名, 年龄 FROM xsxx
正确答案:B
5 在登记学生成绩时要保证列Score的值在0到100之间,下面()方法最简单。
A 编写一个触发器来检查Score的值,如果在0和100之间,则撤消插入
B 生成用户自定义类型type_Score和规则,将规则与数据类型type_Score相关联,然后设置列Score的数据类型类型为type_Score
C 编写一个触发器来检查Score的值,如果不在0和100之间,则撤消插入
D 在Score列增加检查限制
正确答案:D
6 假设表xsxx的列x的类型是char,根据业务的发展需要改为整型(integer),应该使用下面的()语句。
A ALTER COLUMN x integer FROM xsxx
B ALTER TABLE xsxx ( x integer )
C ALTER TABLE xsxx ALTER COLUMN x integer
D ALTER COLUMN xsxxx integer
正确答案:C
7 在SQL中,建立表的命令是()。
A DROP SCHEMA
B CREATE TABLE
C CREATE VIEW
D DROP INDEX
正确答案:B
8 有如下SQL语句:SELECT FROM student where DeptID between 12 and 15,与该语句等价的是()。
A SELECT FROM student where DeptID<=15 and DeptID>=12
B SELECT FROM student where DeptID<=15 and DeptID>12
C SELECT FROM student where DeptID<15 and DeptID<=12
D SELECT FROM student where DeptID<15 and DeptID<12
正确答案:A
9 SELECT语句中,用于显示部分查询结果的TOP短语与()同时使用,可以显示出查询的排序效果。
A ORDER BY
B CREATE
C DROP
D USEFOR
正确答案:A
10 一般情况下,下面()关键字不能影响SELECT语句返回的结果的行数。
A TOP n
B WHERE
C ORDER BY
D DISTINCT
正确答案:C
为了有效地组织、管理数据,提高数据库的逻辑独立性和物理独立性,人们为数据库设计了一个严谨的体系结构,数据库领域公认的标准结构是三级模式结构,它包括外模式、模式和内模式。
美国家标准协会(American N ational Standard Instit ut e,ANSI)的数据库管理系统研究小组于1 9 78年提出了标准化的建议,将数据库结构分为3级:面向用户或应用程序员的用户级、面向建立和维护数据库人员的概念级、面向系统程序员的物理级。
用户级对应外模式,概念级对应模式,物理级对应内模式,使不同级别的用户对数据库形成不同的视图。所谓视图,就是指观察、认识和理解数据的范围、角度和方法,是数据库在用户“眼中"的反映,很显然,不同层次(级别)用户所“看到’’的数据库是不相同的。
1模式.
模式又称概念模式或逻辑模式,对应于概念级。它是由数据库设计者综合所有用户的数据,按照统一的观点构造的全局逻辑结构,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图)。它是由数据库管理系统提供的数据模式描述语言(Data Description Language,DDL)来描述、定义的,体现、反映了数据库系统的整体观。
2.外模式
外模式又称子模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。用户可以通过外模式描述语言来描述、定义对应于用户的数据记录(外模式),也可以利用数据 *** 纵语言(Data Manipulation Lang uage,DML)对这些数据记录进行。外模式反映了数据库的用户观。
3.内模式
内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式翱物理结构,对应着实际存储在外存储介质上的数据库。内模式由内模式描述语言来描述、定义,它是数据库的存储观。
在一个数据库系统中,只有唯一的数据库, 因而作为定义 、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是惟一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是惟一的,也不可能是惟一的。
4.三级模式间的映射 数据库的三级模式是数据库在三个级别 (层次)上的抽象,使用户能够逻辑地、抽象地处理数据而不必关心数据在计算机中的物理表示和存储。实际上 ,对于一个数据库系统而言一有物理级数据库是客观存在的,它是进行数据库 *** 作的基础,概念级数据库中不过是物理数据库的一种逻辑的、抽象的描述(即模式),用户级数据库则是用户与数据库的接口,它是概念级数据库的一个子集(外模式)。
用户应用程序根据外模式进行数据 *** 作,通过外模式一模式映射,定义和建立某个外模式与模式间的对应关系,将外模式与模式联系起来,当模式发生改变时,只要改变其映射,就可以使外模式保持不变,对应的应用程序也可保持不变;另一方面,通过模式一内模式映射,定义建立数据的逻辑结构(模式)与存储结构(内模式)间的对应关系,当数据的存储结构发生变化时,只需改变模式一内模式映射,就能保持模式不变,因此应用程序也可以保持不变。
以上就是关于数据库原理及应用基础的常见类型题全部的内容,包括:数据库原理及应用基础的常见类型题、大工13秋《SQL数据库系统及应用》在线作业2、几个关于数据库基本原理的简答题、高分求答案等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)