sql With(NoLock),With(ReadPast)
---------------
create table tmp1
(
id int primary key,
name nvarchar(20)
) -----------
insert into tmp1(id,name) values(1,'zhsan1');
insert into tmp1(id,name) values(2,'lisi1'); -------------------------------
select * from tmp1
更新(Update)语句对数据库加锁
-----------------------------
begin tran tran1
update tmp1 set name='zhsan' where id=1
-------------------------------
select * from tmp1
查询一直在进行,此时表已经被锁住了
-------------------------------
update tmp1 set name='lisi' where id=2
-------------------------------
select * from tmp1 where id>1
-------------------------------
delete from tmp1 where id=2
-------------------------------
select * from tmp1 where id>1
查询,更新,删除除被锁定的那行数据都能成功,说明被锁住的只有id=1的那一行,对其他行的查询,更新及删除无影响
插入语句
-------------------------------
insert into tmp1(id,name) values(3,'lisi')
-------------------------------
select * from tmp1 where id>1
结果执行成功,说明插入不受影响
先将数据库还原为
-----------------------------
begin tran tran1
update tmp1 set name='zhsan' where id=1
with(readpast)与with(nolock)
-------------------------------
select * from tmp1 with(readpast)
-------------------------------
select * from tmp1 with(nolock)
with(readpast)会忽略被锁住的那一行,with(nolock)不会
sql With(NoLock),With(ReadPast)的更多相关文章
- 在查询语句中使用 NOLOCK 和 READPAST
对于非银行等严格要求事务的行业,搜索记录中出现或者不出现某条记录,都是在可容忍范围内,所以碰到死锁,应该首先考虑,我们业务逻辑是否能容忍出现或者不出现某些记录,而不是寻求对双方都加锁条件下如何解锁的问 ...
- SQL SERVER中UPDLOCK ,READPAST使用
原文:SQL SERVER中UPDLOCK ,READPAST使用 SQL SERVER中中获取不重复数据: select top 1 * from orders with(UPDLOCK ,READ ...
- sql 2000 NOLOCK 和 ROWLOCK 和 UPDLOCK
关系型数据库,如SQL Server,使用锁来避免多用户修改数据时的并发冲突.当一组数据被某个用户锁定时,除非第一个用户结束修改并释放锁,否则其他用户就无法修改该组数据. 有些数据库,包括SQL Se ...
- SQL Server - NOLOCK
NOLOCK 一般用于此类语句中:select * from t with(NOLOCK)nolock是不加锁查询,可以读取被事务锁定的数据,也称为脏读.说明:使当前会话的查询,不受其它会话的事务所阻 ...
- SQL Server-聚焦NOLOCK、UPDLOCK、HOLDLOCK、READPAST你弄懂多少?(三十四)
前言 时间流逝比较快,博主也在快马加鞭学习SQL Server,下班回来再晚也不忘记更新下博客,时间挤挤总会有的,现在的努力求的是未来所谓的安稳,每学一门为的是深度而不是广度,求的是知识自成体系而不是 ...
- SQL with(unlock)与with(readpast) (转)
所有Select加 With (NoLock)解决阻塞死锁,在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAS ...
- SQL with(unlock)与with(readpast)
所有Select加 With (NoLock)解决阻塞死锁,在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAS ...
- 简述SQL with(unlock)与with(readpast)
所有Select加 With (NoLock)解决阻塞死锁,在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAS ...
- 在sqlserver 中with(nolock)详解
所有Select加 With (NoLock)解决阻塞死锁 在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK ...
随机推荐
- string、char *的转换
string转char* 主要有三种方法可以将str转换为char*类型,分别是:data(); c_str(); copy(); data()方法 string str = "hello& ...
- maven 打包 war 包含 WEB-INF/lib 目录
<plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactI ...
- .NET中的async和await关键字使用及Task异步调用实例
其实早在.NET 4.5的时候M$就在.NET中引入了async和await关键字(VB为Async和Await)来简化异步调用的编程模式.我也早就体验过了,现在写一篇日志来记录一下顺便凑日志数量(以 ...
- PHP队列的实现 算法
<?php /** * php队列算法 * * Create On 2010-6-4 * Author Been * QQ:281443751 * Email:binbin1129@126.co ...
- 如何给oneindex网盘增加评论、密码查看、read me,头提示功能。
来自我的博客:www.resource143.com 微信公众号:资源库resource 视频教程地址 点击查看 评论功能 特性 使用 GitHub 登录 支持多语言 [en, zh-CN, zh-T ...
- OpenERP __sql_constrants doesn't work.
可能的原因有两个,一个是你没有更新模块列表,第二个可能是你原有的列已经有重复的数据.(unique限制为例.)
- C#中方法,方法声明,方法调用和方法重载!
一,定义:方法是具有名称的可执行代码块. 二,方法的声明:声明方法的语法包括以下五个部分: 1,访问权限修饰符,这个是可选的参数,默认值是私有访问private,即只能从声明它的类的内部访问. 2 ...
- eclipse修改Properties资源文件的默认编码
在eclipse下,打开window-->preferences-->general-->content Types-->java Properties File 将其编码方式 ...
- C#判断字符串中是否包含一个子字符串是可以直接使用Contains()方法
1. 以前判断一个字符串中是否包含另一个子字符串时,习惯使用 IndexOf(); string str = "ABC@QQ"; if(str.IndexOf("@&qu ...
- Java 实现两个整数变量的交换
class OperatorTest { public static void main(String[] args) { int a = 10; int b = 20; System.out.pri ...