1
我正在嘗試調試與SQL Server數據庫交互的應用程序。它部分使用數據庫遊標來完成此操作。如何在SQL Server Management Studio中訪問遊標狀態
在單步執行應用程序時,我希望使用SQL Server 2012 Management Studio(它與正在使用的數據庫有連接)查看特定遊標的狀態。
我該怎麼做?還是有一些其他的工具,我可以做到這一點?
我正在嘗試調試與SQL Server數據庫交互的應用程序。它部分使用數據庫遊標來完成此操作。如何在SQL Server Management Studio中訪問遊標狀態
在單步執行應用程序時,我希望使用SQL Server 2012 Management Studio(它與正在使用的數據庫有連接)查看特定遊標的狀態。
我該怎麼做?還是有一些其他的工具,我可以做到這一點?
select c.*
from sys.dm_exec_sessions s
cross apply sys.dm_exec_cursors(s.session_id) c
大衛
這將是更好,如果你*不*使用光標在所有。幾乎沒有理由使用遊標,並且絕對沒有理由讓客戶端應用程序這樣做。近20年前,客戶端遊標已被隔離式記錄器所取代。即使使用* 2 *個併發用戶,遊標也會導致可伸縮性問題 –
爲什麼使用遊標?你想做什麼? –
@Panagiotis Kanavos有些情況下,應用程序有一個循環過程,它爲特定表中的特定字段生成值,以便一次更新一個記錄和幾個字段,並且必須在下一次循環迭代開始之前提交數據。對於這些情況,更新通過光標完成。 –