数据库系统运行的基本工作单位是事务。事务通常以BEGIN TRANASCTION语句开始,以COMMIT或R<OI上BACK语句结束。COMMIT表示(46),ROLLBACK表示(47)。在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样

admin2009-02-15  32

问题 数据库系统运行的基本工作单位是事务。事务通常以BEGIN TRANASCTION语句开始,以COMMIT或R<OI上BACK语句结束。COMMIT表示(46),ROLLBACK表示(47)。在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样,此时事务达到了(48)要求。
在关系SC(emp_id,emp_name,emp_phone,dept_name,dept_phone,dept_mgmame)中,有函数依赖:(1)emp_id→emp_name,emp_phone,dept_name:(2)dept_name→ dept_phone,dept_mgmame
   那么该关系满足最大范式是(49)。它的主要问题是数据冗余。如把SC分解成两个关系模式R1(50)和R2(51),则可以完全解决这一问题。

选项 A、物理数据库尚未更新,事务执行失败
B、物理数据库尚未更新,事务执行成功
C、物理数据库已更新,事务执行失败
D、物理数据库已更新,事务执行成功

答案D

解析 事务以BEGIN TRANASCTION语句开始立即进入“活动”状态,事务的最后一个语句执行之后,进入“局部提交”状态。如果出入活动状态的事务还没达到最后一个语句就中止执行,此时事务进入“失败”状态。事务进入局部提交状态后,并发控制系统检查通
过后,系统执行提交(COMMIT)操作,把对数据库的修改全部写到磁盘上,并通知系统,事务成功地结束。事务进入“提交”状态。处于失败状态的事务,取消(ROLLBACK)原事务,重新改写应用程序。
   为了保证数据库的完整性,事务具有下列4个性质:
   1.原子性:一个事务中所有对数据库的操作,是一个不可分割的操作序列。这些操作要么全部执行,要么什么也不做。
   2.一致性:一个事务独立执行的结果,将保持数据库的一致性,即数据不会因事务的执行而遭受破坏。
   3.隔离性:在多个事务并发执行时,系统应保证与这些事务先后单独执行时的结果一样,此时称事务达到了隔离性要求。也就是并发执行的事务不必关心其他事务,如同在单用户环境下一样。
   4.持久性:一个事务一旦完成全部操作后,它对数据库的所有更新应永久地反映在数据库中。即使以后系统发生故障,也应保留这个事务执行的结果。
   从题目中给出的函数依赖和Armstrong公理中可以看出,关系SC的主码是emp_id。emp_id→dept_namedept,name→dept_mgmame成立,其中emp_id是主码,dept_mgrname是非主属性,因此SC不满足3NF。且关系SC中每个非主属性完全依赖于主码emp_id,因此满足2NF。所以关系SC 满足的最大范式是2MF。
   该关系主要是存在传递依赖,只需要分解关系使之达到较高范式。分解为(emp_id, emp_name,emp_phone,dept_name)和(dept_name,dept_phone,dept_mgrname)。
转载请注明原文地址:https://kaotiyun.com/show/xxxZ777K
0

相关试题推荐
最新回复(0)