SQL内部培-事务隔离级别.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
SQL内部培-事务隔离级别

数据库系统 数据库是采用计算机技术统一管理的相关数据的集合,数据库能为各种用户共享,具有冗余度最小、数据之间联系密切、有较高数据独立性等特点。 数据库管理系统(Database Management System,简称为DBMS)是位于用户与操作系统之间的一层数据管理软件,它为用户或应用程序提供访问数据库的方法,包括数据库的建立、查询、更新以及各种数据库控制等。 Microsoft SQL Server 2008系统是由微软公司研制和发布的分布式关系型数据库管理系统,可以支持企业、部门以及个人等各种用户完成信息系统、电子商务、决策支持、商业智能等工作。 通常,把Microsoft SQL Server简称为SQL Server,严格地说,SQL Server和Microsoft SQL Server是不同的,Microsoft SQL Server是由微软公司开发的SQL Server系统。但是,最早的SQL Server系统并不是微软开发出来的,而是由赛贝斯公司推出的。 MSSQL数据库的类型和特点 Microsoft SQL Server 2008系统提供了两种类型的数据库,即系统数据库和用户数据库。 系统数据库存放Microsoft SQL Server 2008系统的系统级信息,例如系统配置、数据库的属性、登录账户、数据库文件、数据库备份、警报、作业等信息。Microsoft SQL Server 2008使用这些系统级信息管理和控制整个数据库服务器系统。 用户数据库是由用户创建的、用来存放用户数据和对象的数据库。 系统数据库 master数据库是最重要的系统数据库,它记录了SQL Server系统级的所有信息,这些系统级的信息包括服务器配置信息、登录账户信息、数据库文件信息、SQL Server初始化信息等等,这些信息影响整个SQL Server系统的运行。 model数据库是一个模板数据库。该数据库存储了可以作为模板的数据库对象和数据。当创建用户数据库时,系统自动把该模板数据库中的所有信息复制到用户新建的数据库中,使得新建的用户数据库初始状态下具有了与model数据库一致的对象和相关数据,从而简化数据库的初始创建和管理操作。 msdb是与SQLServerAgent服务有关的数据库。该系统数据库记录有关作业、警报、操作员、调度等信息,这些信息可以用于自动化系统的操作。 tempdb是一个临时数据库,用于存储查询过程中所使用的中间数据或结果。实际上,它只是一个系统的临时工作空间。 OLTP和OLAP 在数据库技术领域,按照OLTP数据存储模型组织数据的应用环境称为OLTP环境。OLTP数据存储模型也称为OLTP数据库。 OLAP数据存储模型与OLTP数据存储模型截然不同。从使用目的来看,OLAP数据库的主要作用是提高系统对数据的检索和分析速度。 SQL Server的事务隔离级别 事务简介 数据库中的事务是数据库并发控制的基本单位,一条或者一组语句要么全部成功,对数据库中的某些数据成功修改; 要么全部不成功,数据库中的数据还原到这些语句执行之前的样子。比如网上订火车票,要么你定票成功,余票显示就减一张; 要么你定票失败获取取消订票,余票的数量还是那么多。不允许出现你订票成功了,余票没有减少或者你取消订票了,余票显示却少了一张的这种情况。这种不被允 许出现的情况就要求购票和余票减少这两个不同的操作必须放在一起,成为一个完整的逻辑链,这样就构成了一个事务。 数据库中事务的 ACID 原则 原子性 (Atomictiy):事务的原子性是指一个事务中包含的一条语句或者多条语句构成了一个完整的逻辑单元,这个逻辑单元具有不可再分的原子性。这个逻辑单元要么一起提交执行全部成功,要么一起提交执行全部失败。 一致性 (Consistency):可以理解为数据的完整性,事务的提交要确保在数据库上的操作没有破坏数据的完整性,比如说不要违背一些约束的数据插入或者修改行为。一旦破坏了数据的完整性,SQL Server 会回滚这个事务来确保数据库中的数据是一致的。 隔离性(Isolation):与数据库中的事务隔离级别以及锁相关,多个用户可以对同一数据并发访问而又不破坏数据的正确性和完整性。但是,并行事务的修改必须与其它并行事务的修改相互独立,隔离。 但是在不同的隔离级别下,事务的读取操作可能得到的结果是不同的。 持久性(Durability):数据持久化,事务一旦对数据的操作完成并提交后,数据修改就已经完成,即使服务重启这些数据也不会改变。相反,如果在事务的执行过程中,系统服务崩溃或者重启,那么事务所有的操作就会被回滚,即回到事务操作之前的状态。 我理解在极端断电或者系统崩溃的情况下,一个发生在事务未提交之前,数据库应该记录了这个事务的”ID

文档评论(0)

173****7830 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档