簡體   English   中英

無法在 Visual Studio Team System 2008 中調試 SQL Server 2005 存儲過程

[英]Unable to debug SQL Server 2005 stored procedures in Visual Studio Team System 2008

我一直在嘗試在 Visual Studio Team System 2008 中調試 SQL Server 2005 存儲過程。

我連接到數據庫服務器並在存儲過程上右鍵單擊“執行”。 我什至嘗試過“步入存儲過程”,但沒有運氣。

替代文字
(來源: googlepages.com

IDE 顯示它正在運行,但我似乎無法中斷或進入存儲過程。

替代文字
(來源: googlepages.com

我檢查了事件查看器,沒有日志。 沒有 output 或顯示問題所在的消息。

Visual Studio 包含以下組件:-

替代文字
(來源: googlepages.com

很多論壇都提到了調試問題,但沒有找到簡單的解決方案。

我錯過了什么嗎? 或者有誰知道一個更簡潔的站點,它可以成功地進行存儲過程調試?

檢查這個,特別是遠程調試部分: http://www.dbazine.com/sql/sql-articles/cook1

有關調試 sql 的其他一般信息,請查看http://msdn.microsoft.com/en-us/library/zefbf0t6.aspx

請記住,您還必須對正在調試的 sql 服務器框具有管理員權限。 過去,我不得不使用資源管理器上下文菜單中的 RunAs 選項來啟動 Visual Studio。 我使用與 sql 服務器框上的管理員用戶相同的憑據。

需要調查的一個問題是,SQL 調試中涉及的任何 SQL 服務器用戶帳戶都必須對名為 sp_sdidebug 的擴展存儲過程具有“執行”權限,默認情況下只有系統管理員帳戶 (sa) 才具有該權限。

要檢查這一點,請使用該帳戶登錄 SQL 服務器,然后使用 SQL 服務器管理工作室鍵入以下 SQL 命令:

EXEC master..sp_sdidebug

您將看到表明命令成功完成的結果或執行權限錯誤。 如果您看到后一個結果,您還應該檢查該帳戶是否具有對主數據庫本身的權限。 DBA 向存儲過程授予權限而不是向主數據庫授予權限並不是未知的。

將 SQL 服務器帳戶的執行權限授予 sp_sdidebug 的最快方法是輸入以下 SQL:

GRANT EXECUTE ON master..sp_sdidebug TO SpecificAccountName

還有另一個問題,但它不會影響您,因為您正在使用服務器資源管理器。 如果您從客戶端應用程序調試,您還必須執行以下命令:

EXEC master..sp_sdidebug 'legacy_on'

請注意,遠程 SQL 服務器調試是使用 DCOM 完成的,正確配置可能會很棘手。 首先,您需要在遠程數據庫服務器上安裝完整的遠程調試組件。 每次使用服務包或補丁升級 SQL 服務器時,您可能還需要重復此過程。

項目中開啟SQL服務器調試了嗎?

項目 | 屬性 | 調試選項卡。

編輯:還可以在服務器資源管理器中的數據連接上啟用“允許 SQL/CLR 調試”。

它的 windows 防火牆。 禁用它並嘗試它應該可以工作

您是否嘗試過通過 Citrix 或 RDP 在服務器上進行本地調試?

希望這可以幫助,

賬單

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM