sqlserver select会造成死锁吗
答案:2 悬赏:10 手机版
解决时间 2021-03-09 15:08
- 提问者网友:我的未来我做主
- 2021-03-09 03:54
sqlserver select会造成死锁吗
最佳答案
- 五星知识达人网友:蓝房子
- 2021-03-09 05:27
--死锁检测 use master Select * from sysprocesses where blocked0 --找到SPID exec sp_lock --根据SPID找到OBJID select object_name(85575343) --根据OBJID找到表名
全部回答
- 1楼网友:山有枢
- 2021-03-09 06:49
锁的类别有两种分法:
从数据库系统的角度来看锁分为独占锁(即排它锁),共享锁和更新锁
ms-sql server 使用以下资源锁模式。
锁模式 描述
共享 (s) 用于不更改或不更新数据的操作(只读操作),如 select 语句。
更新 (u) 用于可更新的资源中。防止当多个会话在读取、锁定以及随后可能进行的资源更新时发生常见形式的死锁。
排它 (x) 用于数据修改操作,例如 insert、update 或 delete。确保不会同时同一资源进行多重更新。
意向锁 用于建立锁的层次结构。意向锁的类型为:意向共享 (is)、意向排它 (ix) 以及与意向排它共享 (six)。
架构锁 在执行依赖于表架构的操作时使用。架构锁的类型为:架构修改 (sch-m) 和架构稳定性 (sch-s)。
大容量更新 (bu) 向表中大容量复制数据并指定了 tablock 提示时使用。
共享锁
共享 (s) 锁允许并发事务读取 (select) 一个资源。资源上存在共享 (s) 锁时,任何其它事务都不能修改数据。一旦已经读取数据,便立即释放资源上的共享 (s) 锁,除非将事务隔离级别设置为可重复读或更高级别,或者在事务生存周期内用锁定提示保留共享 (s) 锁。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯