https://www.cnblogs.com/sthinker/p/5922967.html…
https://www.cnblogs.com/sthinker/p/5922967.html SqlServer查询语句中用到的锁 作者: wokofo 前段时间**公司DBA来我们这培训.讲了一大堆MYSQL的优化. QA环节一程序员问"SQL语句中的 with nolock 除了不锁表外,是否能读其他锁住的数据". 讲课的人嘟嘟了半天没解释清楚(有可能是MYSQL里没有这个机制),公司的另一程序员给出了一个很简洁明了的回答: WITH NOLOCK 除了本身不锁表(不加任何锁)…
前言 时间流逝比较快,博主也在快马加鞭学习SQL Server,下班回来再晚也不忘记更新下博客,时间挤挤总会有的,现在的努力求的是未来所谓的安稳,每学一门为的是深度而不是广度,求的是知识自成体系而不是零散,废话不多说本节我们来讲讲SQL Server基础系列最后几节内容,这话博主说了n次,呵呵. NOLOCK和READPAST NOLOCK 随便翻翻博客园对于各种锁的介绍真的是一个字[多],仅仅介绍其概念,再要么就是转载其概念,不知道那些转载概念的园友是否已经弄懂了,稍微发下感慨.NOLOCK在…
以下内容整理自: SQL Server中的锁 SQLSERVER中的元数据锁 SQLSERVER中的锁资源类型 浅谈sqlserver中的事务和锁 锁的分类 1.从数据库角度 独占锁(排它锁 X) 独占锁锁定的资源只允许进行锁定操作的程序使用,其它任何对它的操作均不会被接受.执行INSERT.UPDATE和DELETE命令时,SQLSERVER会自动使用独占锁.但当对象上有其它锁时,无法加独占锁.独占锁一直到事务结束才能被释放. 共享锁(S) 共享锁锁定的资源可以被其它用户读取,但其它用户不能修…
目录结构: contents structure [+] 事务是什么 控制事务 数据并发访问产生的影响 事务的隔离级别 锁 NOLOCK.HOLDLOCK.UPDLOCK 死锁分析 在这篇Blog中,笔者将会解析阐述SqlServer中的事务,希望可以对你有所帮助. 1.事务是什么 事务就是单个逻辑单元执行的一系列操作.事务都具有ACID特性:原子性(Atomicity).一致性(Consistency).隔离性(Isolation)和持久性(Durability). 原子性(Atomicity…
我的新书ASP.NET MVC企业级实战预计明年2月份出版,感谢大家关注! 本篇,我将来讲解一下在Sqlserver中批量插入数据. 先创建一个用来测试的数据库和表,为了让插入数据更快,表中主键采用的是GUID,表中没有创建任何索引.GUID必然是比自增长要快的,因为你生成一个GUID算法所花的时间肯定比你从数据表中重新查询上一条记录的ID的值然后再进行加1运算要少.而如果存在索引的情况下,每次插入记录都会进行索引重建,这是非常耗性能的.如果表中无可避免的存在索引,我们可以通过先删除索引,然后批…
已经有快2个月没有更新博客了,实在是因为最近发生了太多的事情,辞了工作,在湘雅医院待了一个多月,然后又新换了工作...... 在平时的工作中,Sqlserver中许多知识点是经常用到的,但是有时候我们往往忽略了它们,在过去的一年里,一直使用的是Mysql,现在又开始接触Sqlserver了,所以就把一些常用又容易忽视的Sqlserver知识点总结一点,以便备忘之用. 所有的操作都将基于Northwind数据库来进行操作. 注意:当采用附加Northwind数据库的方式进行数据库迁移的时候,可能会…
SQLSERVER中的ALLOCATION SCAN和RANGE SCAN 写这篇文章的开始,我还不知道ALLOCATION SCAN的工作原理是怎样的,网上资料少得可怜 求助了园子里的某位大侠,他看了我的信息几天之后才回复我,不过他的回复里没有答案 这几天一直在苦思冥想,后来终于通过动手,验证出来了,知道ALLOCATION SCAN的工作原理是怎样的(结果中秋节过完就出差去了) 10月3日回到家马上开始动笔 在看下去之前请大家先看一下下面的文章 SQLSERVER聚集索引与非聚集索引的再次研…
简介      什么是死锁? 我认为,死锁是由于两个对象在拥有一份资源的情况下申请另一份资源,而另一份资源恰好又是这两对象正持有的,导致两对象无法完成操作,且所持资源无法释放. 什么又是阻塞? 阻塞是由于资源不足引起的排队等待现象.比如同时两个进程去更新一个表. 这里我们可以把阻塞作为死锁的必要条件.下面我们先理解一下死锁和阻塞再来看一下我最近遇到一个问题以及解决思路. SQLServer中的死锁      对应到SQL Server中,当在两个或多个任务中,如果每个任务锁定了其他任务试图锁定的…
SQLSERVER中的元数据锁 网上对于元数据锁的资料真的非常少 元数据锁一般会出现在DDL语句里 下面列出数据库引擎可以锁定的资源 资源 说明 RID 用于锁定堆(heap)中的某一行 KEY 用于锁定索引上的某一行,或者某个索引键 PAGE 锁定数据库中的一个8KB页,例如数据页或索引页 EXTENT 一组连续的8页(区) HOBT 锁定整个堆或B树的锁 TABLE 锁定包括所有数据和索引的整个表 FILE 数据库文件 APPLICATION 应用程序专用的资源 METADATA    元数…