請問當發生deadlock時,要如何知道deadlock是死在那一段sql語法? |
答題得分者是:eaglewolf
|
macchen
初階會員 ![]() ![]() 發表:66 回覆:102 積分:33 註冊:2006-07-07 發送簡訊給我 |
各位好,請問當發生deadlock時,要如何知道deadlock是死在那一段sql語法?因為客戶端一直發生deadlock的問題,但是我們開發的程式卻只能取得的訊息只有
「Transaction (Process ID 120) was deadlocked on lock resources with another process and has been chosen as the deadlock victim. Rerun the transaction.」 可是卻不能像在enterprise manager下面一樣看到產生deadlock時是那一段sql語法造成的問題,著實讓人無頭緒可得知是那邊的問題,請問各位,有沒有什麼方法可以 得知造成deadlock是那一段sql語法,謝謝各位。 因為我們總不可能老是叫客戶去sql下看這些資訊吧…麻煩各位知道的告知一下,謝謝。
------
DELPHI初學者 | |||||||||||||||||||||||||||
eaglewolf
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:4 回覆:268 積分:429 註冊:2006-07-06 發送簡訊給我 |
執行預存程序 Sp_Who
會回傳 結果集以及以下的資訊。 [order by spid]
其中spid > 50 是使用者工作階段。 可直接指定 spid 例如: EXEC sp_who 10 參考: MS-SQL Server 2000 的 Query Analyzer 的 Transact-SQL說明
------
先查HELP 再查GOOGLE 最後才發問 沒人有義務替你解答問題 在標題或文章中標明很急 並不會增加網友回答速度 Developing Tool: 1.Delphi 6 2.Visual Studio 2005 3.Visual Studio 2008 DBMS: MS-SQL |
|||||||||||||||||||||||||||
P.D.
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:603 回覆:4038 積分:3874 註冊:2006-10-31 發送簡訊給我 |
如果你只是很單純想查出這類的錯誤位置,不妨試用 eurekalog 套件,到
www.eurekalog.com 下載試用版(30天)加入到你的 form內,就可以知道錯誤列了 站內有這方面討論,關鍵字 eurekalog |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |