sqlserver提供的表级锁
来源:互联网 发布:存放照片的软件 编辑:程序博客网 时间:2024/05/20 13:16
sqlserver所指定的表级锁定提示有如下几种
1. HOLDLOCK: 在该表上保持共享锁,直到整个事务结束,而不是在语句执行完立即释放所添加的锁。
2. NOLOCK:不添加共享锁和排它锁,当这个选项生效后,可能读到未提交读的数据或“脏数据”,这个选项仅仅应用于SELECT语句。
3. PAGLOCK:指定添加页锁(否则通常可能添加表锁)
4. READCOMMITTED用与运行在提交读隔离级别的事务相同的锁语义执行扫描。默认情况下,SQL Server 2000 在此隔离级别上操作。
5. READPAST: 跳过已经加锁的数据行,这个选项将使事务读取数据时跳过那些已经被其他事务锁定的数据行,而不是阻塞直到其他事务释放锁,READPAST仅仅应用于READ COMMITTED隔离性级别下事务操作中的SELECT语句操作
6. READUNCOMMITTED:等同于NOLOCK。
7. REPEATABLEREAD:设置事务为可重复读隔离性级别。
8. ROWLOCK:使用行级锁,而不使用粒度更粗的页级锁和表级锁。
9. SERIALIZABLE:用与运行在可串行读隔离级别的事务相同的锁语义执行扫描。等同于 HOLDLOCK。
10. TABLOCK:指定使用表级锁,而不是使用行级或页面级的锁,SQL Server在该语句执行完后释放这个锁,而如果同时指定了HOLDLOCK,该锁一直保持到这个事务结束。
11. TABLOCKX:指定在表上使用排它锁,这个锁可以阻止其他事务读或更新这个表的数据,直到这个语句或整个事务结束。
12. UPDLOCK :指定在读表中数据时设置更新锁(update lock)而不是设置共享锁,该锁一直保持到这个语句或整个事务结束,使用UPDLOCK的作用是允许用户先读取数据(而且不阻塞其他用户读数据),并且保证在后来再更新数据时,这一段时间内这些数据没有被其他用户修改
SELECT * FROM table WITH (HOLDLOCK) 其他事务可以读取表,但不能更新删除
SELECT * FROM table WITH (TABLOCKX) 其他事务不能读取表,更新和删除
- sqlserver提供的表级锁
- sqlserver提供的表级锁
- SQLServer 提供的25 种数据类型
- 例2:通过SQLSERVER 提供的驱动程序获得连接
- SQLserver提供的统计信息流已损坏
- SQLSERVER 解决SQLServer 2008安装时代理服务提供的凭据无效的方法
- 下表列出SQLServer查询分析器提供的所有键盘快捷方式。
- provider:共享内存提供程序,error:0-管道的另一端上无任何进程(sqlserver 2005数据库异常)
- sqlserver关于错误“ provider: TCP 提供程序, error: 40 - 由于目标机器积极拒绝,无法连接”的解决
- 解决SQLSERVER查询连接数据库表问题:OLE DB 访问接口 "MSDASQL" 为列提供的元数据不一致
- sqlserver 2008 express provider 命名管道提供程序 error 40
- sqlserver异常:传入的表格格式数据流 (TDS)远程过程调用(RPC)协议流不正确。此 RPC 请求中提供了过多的参数。最多应为 2100
- sqlserver 消息 682,: 内部错误。提供用于读取列值的缓冲区太小。请运行 DBCC CHECKDB 查看是否有损坏情况 的处理方法
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC SQLPERF提供所有数据库的事务日志空间使用情况统计信息
- struts提供的类
- struts提供的类
- 提供ICON的网站
- spring提供的事务管理
- poj 1730 Perfect Pth Powers
- Linux基本常用命令
- java实现冒泡排序
- 做一个心如止水的程序员会
- CAKeyframeAnimation
- sqlserver提供的表级锁
- java swing打开子窗口后主窗口还用
- Javascript 类的实现
- jstl <fmt:formateDate>
- 设计模式系列:面向对象的系统设计
- 模拟IE浏览器冲浪方式实现监测网站各链接性能和预览图
- LINUX用户和用户组管理
- linux指令大全(完整篇)
- 在REDHAT 5.1.19.6系統上安裝oracle 11G還需要安裝的系統安裝包