相关疑难解决方法(0)

如何将 SQL Server 死锁报告中的键转换为值?

我有一份死锁报告,告诉我有一个涉及到的冲突

waitresource="KEY: 9:72057632651542528 (543066506c7c)"
Run Code Online (Sandbox Code Playgroud)

我可以看到这个:

<keylock hobtid="72057632651542528" dbid="9" objectname="MyDatabase.MySchema.MyTable" indexname="MyPrimaryKeyIndex" id="locka8c6f4100" mode="X" associatedObjectId="72057632651542528">
Run Code Online (Sandbox Code Playgroud)

该范围内<resource-list>的元素。

我希望能够找到键的实际值(例如,id = 12345)。我需要使用什么 SQL 语句来获取该信息?

sql-server deadlock primary-key sql-server-2012

17
推荐指数
4
解决办法
1万
查看次数

Delete 语句上的死锁

SQL Server 作业运行时出现死锁。死锁发生在一个简单的 DELETE 语句上。我原以为必须运行 SELECT/UPDATE 查询才能导致死锁?但看起来是 DELETE/DELETE 死锁...

我正在寻找的是为什么我会遇到 DELETE/DELETE 死锁。这是(据我所知)传入不同的参数。

有任何想法吗?谢谢。

deadlock-list
2014-05-20 07:30:09.66 spid25s      deadlock victim=process409048
2014-05-20 07:30:09.66 spid25s       process-list
2014-05-20 07:30:09.66 spid25s        process id=process409048 taskpriority=0 logused=0 waitresource=PAGE: 12:1:7127294 waittime=4352 ownerId=629860973 transactionname=DELETE lasttranstarted=2014-05-20T07:30:05.307 XDES=0x397219620 lockMode=U schedulerid=5 kpid=3792 status=suspended spid=150 sbid=0 ecid=3 priority=0 trancount=0 lastbatchstarted=2014-05-20T07:30:05.307 lastbatchcompleted=2014-05-20T07:30:05.307 clientapp=QSQL25 hostname=MORRIS hostpid=1528 isolationlevel=read committed (2) xactid=629860973 currentdb=12 lockTimeout=4294967295 clientoption1=671088672 clientoption2=128056
2014-05-20 07:30:09.66 spid25s         executionStack
2014-05-20 07:30:09.66 spid25s          frame procname=adhoc line=1 stmtstart=68 sqlhandle=0x020000000b887a18f75d0aa07c25a9b8630fca696aa0e5d2
2014-05-20 07:30:09.66 spid25s     DELETE FROM dbo.UserDetailsData WHERE        (Username = …
Run Code Online (Sandbox Code Playgroud)

sql-server deadlock

11
推荐指数
1
解决办法
2万
查看次数