对SQLServer锁模式的描述

以下的文章主要描述的是SQL Server锁模式的描述,其意向共享 (IS) 通过在各资源上放置 S 锁,表明事务的意向主要是读取层次结构中的部分(而不是全部)底层资源。意向排它 (IX) 通过在各资源上放置 X 锁。

表明事务的意向是修改层次结构中的部分(而不是全部)底层资源。IX 是 IS 的超集。

与意向排它共享 (SIX) 通过在各资源上放置 IX 锁,表明事务的意向是读取层次结构中的全部底层资源并修改部分(而不是全部)底层资源。允许顶层资源上的并发 IS 锁。例如,表的 SIX 锁在表上放置一个 SIX 锁(允许并发 IS 锁),在当前所修改页上放置 IX 锁(在已修改行上放置 X 锁)。

虽然每个资源在一段时间内只能有一个 SIX 锁,以防止其它事务对资源进行更新,但是其它事务可以通过获取表级的 IS 锁来读取层次结构中的底层资源。

独占锁:

只允许进行锁定操作的程序使用,其他任何对他的操作均不会被接受。执行数据更新命令时,SQL Server会自动使用独占锁。当对象上有其他锁存在时,无法对其加独占锁。

共享锁:共享锁锁定的资源可以被其他用户读取,但其他用户无法修改它,在执行Select时,SQL Server会对对象加共享锁。

更新锁:

当SQL Server准备更新数据时,它首先对数据对象作更新锁锁定,这样数据将不能被修改,但可以读取。等到SQL Server确定要进行更新数据操作时,他会自动将更新锁换为独占锁,当对象上有其他锁存在时,无法对其加更新锁。

从程序员的角度看:分为乐观锁和悲观锁。

乐观锁:完全依靠数据库来管理锁的工作。

悲观锁:程序员自己管理数据或对象上的锁处理。

MS-SQLSERVER 使用锁在多个同时在数据库内执行修改的用户间实现悲观并发控制

以上的相关内容就是对SQL Server锁模式的描述的介绍,望你能有所收获。

上述的相关内容就是对SQL Server锁模式描述的描述,希望会给你带来一些帮助在此方面。

网页题目:对SQLServer锁模式的描述
本文地址:http://www.shufengxianlan.com/qtweb/news24/461574.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联