ImageVerifierCode 换一换
格式:PPT , 页数:20 ,大小:310.02KB ,
资源ID:1108097      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.docduoduo.com/d-1108097.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(sqlserver课件-事务与锁.ppt)为本站会员(无敌)主动上传,道客多多仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知道客多多(发送邮件至docduoduo@163.com或直接QQ联系客服),我们立即给予删除!

sqlserver课件-事务与锁.ppt

1、事务和锁,课程目标,创建事务提交事务回滚事务回滚事务的一部分用锁解决潜在问题SQL Server 锁设置锁选项,事务,例:要进行货物调拨,把指定仓库中的一定数量的商品调拨到另一个仓库中。问:(如何确保这个操作一定可以一起完成),设置多个操作必须全部执行成功,否则立即恢复到未执行任何操作时的状态是一个逻辑工作单元,单元中包含一批操作具有ACID四个性质原子性:不可只完成部分操作一致性:在处理成功后,所有数据都保持一致状态独立性:禁止其它事务看到本事务的中间状态持久性:一个已完成的事务对数据所作的任何变动在 系统中是永久有效的,自定义事务,Begin Transaction 事务名 执行自定义事务

2、 Commit Transaction 事务名 如果全部成功,提交事务Save Transaction 保存点名 顾名思义,定义事务的某个执行位置 Rollback Transaction 保存点名 回滚事务到事务的保存点位置 注:1、如果回滚到保存点,并不提交事务 2、trancount 存储当前的事务数量,自定义事务的实现方式,Rollback,问:如有下列操作系列,结果会如何 begin transaction update student set cphone=12345678 where sid=A00001 update student set cname=aaa where si

3、d=A00001 rollback transaction,Rollback,例:如果在调拨过程中要求记载下来调拨信息,若发现被调货的仓库的库存不够,则整个操作全部取消,事务类型,显示事务:由用户指定事务的开始和结束自动事务:每个语句视为一个事务隐式事务:开始执行语句就视为一个事务的开始,但语句执行完后,事务并不结束(由用户显示提交) set implicit_transactions on | off,数据并行问题,所谓数据并行的问题就是指当数据同时进行事务处理时所发生的问题。,数据并行问题,1、遗失更新:当两个或多个事务试图修改同一行时,事务队列中最后的更新会重写前面事务所作的修改,资源

4、A =100 事务A 事务B read A read A update A+50 write A update A+10 write A,数据并行问题,2、无效读入 :一个事务读取了尚未认可的更新数据,资源 A =100 事务A 事务B read A update A+50 read A write A update A+10 rollback write A,数据并行问题,3、不一致分析:指事务连续两次读取数据时,所得到的数据不一致,资源 A =100 事务A 事务B read A update A+50 read A update A+10 read A write A,数据并行问题,4、

5、幻象读取:读取到了并不存在的数据,资源 A =100 事务A 事务B read A update A+50 create B read A read B del B update B+80 write B,锁,并行问题的解决方法:锁在功能上避免用户访问正在被其它用户改变的信息,在多用户环境中,避免一些用户同时改变同样的数据SQL Server 使用锁来维护多用户环境下的数据的一致性,SQL Server自动处理锁的行为,锁,Server实现了多粒度上锁,允许事务以不同级别对不同类型的资源上锁行级页级范围表级,共享锁定(S):常用于读事务,允许一个资源上有多个共享锁定,防止其它事务修改资源排它锁

6、定(X):用于写事务,一个资源上只能有一个排它锁定,防止并发事务对资源进行访问,更新锁定(U):用于防止死锁,一个资源上只能有一个更新锁定,且只有获得更新锁定的事务才能获得排它锁定意向锁定(I):让事务声明它将在资源上使用共享、独占、更新锁定模式锁定(S):1、结构模式修改锁定 2、结构描述固定锁定,锁定模式,例:用户A 用户 BBegin transaction begin transaction update student update class set cclassid=c0002 set iperson=iperson+1 select * from class where ccl

7、assid=c0001Commit transaction select * from student commit transaction若这两个事务共时提交会产生什么情况,分析,死锁,死锁:是两个用户分别锁定了不同的对象,且又试图访问另一个用户锁定对象时产生的,理解锁,当产生死锁时,SQL-Server会终止占用最少CPU时间的进程,终止的事务会自动回滚,并给出一个1205的错误SQL Server提供SET DEADLOCK_PRIORITY命令来定制死锁语法SET DEADLOCK_PRIORITY LOW|NORMAL|deadlock_var定制LOCK_TIMEOUT SET LOCK_TIMEOUT命令可被用来设置等待被阻塞资源语句的最长时间,事务日志是一个数据库的数据修改历史,在创建一个数据库时,SQL server会自动创建一个事务日志文件采用提前写的方式,即对数据库的修改,首先会写入到日志中,然后才写入数据库每一个数据修改都会标出一个开始点和结束点,如果由于各种原因未达到结束点,则会恢复前面所做的所有操作SQL Server通过维护日志来管理所有的事务,可用于恢复如电源故障等原因不能完成的所有活动。,事务日志,

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报