SQL Server 2008基础教程 作者 978-7-302-23526-2 ch13.pptVIP

  • 0
  • 0
  • 约3.9千字
  • 约 25页
  • 2015-12-13 发布于广东
  • 举报

SQL Server 2008基础教程 作者 978-7-302-23526-2 ch13.ppt

* 第*页 第13章 事务 本章概述 本章要点 本章内容 在线教务辅导网: 教材其余课件及动画素材请查阅在线教务辅导网 QQ:349134187 或者直接输入下面地址: * 第*页 本章概述 对于一个有大量用户使用的分布式数据库管理系统来说,必须很好地解决多用户使用过程中出现的并发性问题。提高数据库的处理速度,仅依靠提高计算机的物理速度是不够的,还必须充分考虑和解决数据库系统的并发性问题,提高数据库并发操作的效率。 在Microsoft SQL Server 2008系统中,通过采用事务和锁机制,解决了数据库系统的并发性问题。 本章将全面阐述Microsoft SQL Server的事务技术。 * 第*页 本章要点 并发性的概念和并发性问题的特点 事务的概念、类型和特点 事务管理技术 理解锁的作用 掌握定制锁技术 掌握查看和理解锁信息技术 * 第*页 本章内容 13.1 概述 13.2 事务的特点、类型和管理 13.3 使用锁 13.4 本章小结 13.1 概述 经常有许多用户同时访问和使用数据库。并发性就是两个或两个以上的用户同时对数据执行的操作。并发性问题就是并发操作时遇到的各种问题。在Microsoft SQL Server 2008系统中,解决并发性问题采取了事务和锁机制。 * 第*页 事务和锁 事务和锁是两个紧密联系的概念。 事务就是一个单元的工作,包括一系列的操作,这些操作要么全部成功,要么全部失败。事务确保多个数据的修改作为一个单元来处理。例如,在银行业务中有一条记账原则,即有借必有贷、借贷必相等。为了保证这种原则,就必须确保借和贷的记录要么同时成功,要么同时失败。如果出现只记录了借方,或只记录了贷方,违反了记账原则,就会出现记错账的情况。Microsoft SQL Server通过支持事务机制管理多个事务,保证事务的一致性。 通过在事务中使用锁,可以防止其他用户修改还没有完成的事务中的数据。对于多用户系统来说,锁机制是必须的。在Microsoft SQL Server系统中,使用事务日志来保证修改的完整性和可恢复性。 * 第*页 13.2 事务的特点、类型和管理 事务是Microsoft SQL Server系统的重要特征,一方面保证了系统的备份和恢复,另一方面实现了数据一致性机制。下面将详细描述事务的概念、工作原理、事务的类型等内容。 * 第*页 事务的概念 事务是指一个单元的工作。作为一个逻辑单元,它必须具备4个属性:自动性、一致性、独立性和持久性。 自动性是指事务必须是一个自动的单元工作,要么执行全部数据的修改,要么全部数据的修改都不执行。 一致性是指当事务完成时,必须使所有数据都具有一致的状态。 独立性是指并行事务的修改必须与其他并行事务的修改相互独立。 持久性是指当一个事务完成之后,它的影响永久性地产生在系统中,也就是这种修改写到了数据库中。 * 第*页 事务的工作原理 事务确保数据的一致性和可恢复性。事务开始之后,事务所有的操作都陆续写到事务日志中。 写到事务日志中的操作一般有两种:一种是针对数据的操作,一种是针对任务的操作。针对数据的操作,这些操作的对象是大量的数据。有些操作是针对任务的,例如创建索引,这些任务操作在事务日志中记录一个标志,用于表示执行了这种操作。当取消这种事务时,系统自动执行这种操作的反操作,保证系统的一致性。 系统自动生成一个检查点机制,这个检查点周期地发生 * 第*页 使用事务时的考虑 在使用事务时,原则上应该使事务尽可能短并且要避免事务嵌套。事务应该尽可能短,这是因为比较长的事务增加了事务占用数据的时间,使其他必须等待访问该事务锁定数据的事务延长了等待访问数据的时间。在使用事务时,为了使事务尽可能短,应该采取一些相应的方法。 * 第*页 事务的类型 根据系统的设置,可以把事务分成两种类型。一种是系统提供的事务,另一种是用户定义的事务。系统提供的事务是指在执行某些语句时,一条语句就是一个事务。这时,一条语句的对象既可以是表中的一行数据,也可以是表中的多行数据,甚至是表中的全部数据。因此,只有一条语句构成的事务也可能包含了对多行数据的处理。 * 第*页 分布式事务 还有一种特殊的用户定义的事务,这就是分布式事务。前面提到的事务都是在一个服务器上的操作,其保证的数据完整性和一致性是指一个服务器上的完整性和一致性。但是如果在一个比较复杂的环境中可能有多台服务器,那么要保证在多服务器环境中事务的完整性和一致性,就必须定义一个分布式事务。在这个分布式事务中,所有的操作都可以涉及对多个服务器的操作。 * 第*页 管理事务 BEGIN TRANSACTION BEGIN DISTRIBUTED TRANSACTION COMMIT TRANSAC

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档