我们遇到了一些死锁的问题,我发布了这个问题.
通过一些帮助和大量搜索自己,我相信我弄清楚发生了什么.为了在不控制锁升级的情况下解决死锁,我需要理解为什么sql server在插入一行时锁定整个表.
这是我的insert语句(带有重命名的变量):
DECLARE
@Type1 INT = 11,
@Type2 INT = NULL,
@Value1 VARCHAR(20) = '0',
@Value2 VARCHAR(20) = '0',
@Value3 VARCHAR(20) = '0',
@Value4 VARCHAR(20) = '0',
@Date1 DATETIME = '2011-11-25',
@Date2 DATETIME = '2011-11-25',
@Value5 NVARCHAR(50) = '',
@Value6 NVARCHAR(50) = '',
@Type3 INT = NULL,
@Value7 VARCHAR(20) = '4',
@Type4 INT = 4,
@Type5 INT = 15153,
@Type6 INT = 3,
@Type7 INT = 31,
@Type8 INT = 5976,
@Type9 INT = 5044,
@Guid1 …Run Code Online (Sandbox Code Playgroud)