共用方式為


偵錯工具命令和功能的限制

這個主題適用於:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional

Visual Studio Express

ms165035.DoesApplybmp(zh-tw,VS.100).gif ms165035.DoesApplybmp(zh-tw,VS.100).gif ms165035.DoesApplybmp(zh-tw,VS.100).gif ms165035.DoesNotApplybmp(zh-tw,VS.100).gif

Visual Studio Transact-SQL 偵錯工具提供許多偵錯功能,但並非全部通用。Transact-SQL 偵錯支援大多數偵錯命令,例如設定中斷點和逐步執行。您可在 [區域變數] 視窗內檢視變數和傳遞之參數的數值。您也可將運算式拖曳到 [監看式] 視窗內,以便在逐步執行或執行程序時追蹤它們。

但是,由於 SQL Server 本身的某些基本特性,Transact-SQL 偵錯會發生在差異很大的環境中。此差異會對 Transact-SQL 偵錯造成某些限制。

使用 SQL Server 偵錯時的一般限制

  • 不能使用 [編輯繼續]。

  • 不能在 [呼叫堆疊] 視窗中使用 [執行至游標處]。

  • 不能在處理 Transact-SQL 陳述式時使用 [中斷]。

  • SQL PRINT 陳述式的輸出並不會出現在偵錯工具或 [資料庫輸出] 窗格內。

  • 您不能在 Visual Studio 中使用 [AutoRollback]。如果重現變更資料的錯誤,可能會因為資料變更而遺失錯誤。

  • 有幾個視窗不是無法使用就是不提供任何功能。包括:

    • 記憶體

    • 暫存器

    • Transact-SQL 的反組譯碼

Transact-SQL 資料庫偵錯限制

  • 不支援中斷點條件和篩選條件。

  • 因為 SQL Server 並沒有真正的記憶體或暫存器,您不能使用 [記憶體] 視窗或 [暫存器] 視窗。

  • 不能使用 [設定下一個陳述式] 來變更執行順序。必須遵循 Transact-SQL 程式碼中的流程控制和陳述式順序。您可以將控制陳述式圍繞 Transact-SQL 程式碼區塊,然後變更變數的值,做為一種解決方法。

  • 不能從 Transact-SQL 物件內部存取任何 .NET Framework 變數或屬性。

  • 會顯示 [即時運算] 視窗,但是無法使用這個視窗執行任何有用的動作,例如將變數設定為值或查詢資料庫。

  • 有幾個視窗不是無法使用就是不提供任何功能。包括:

    • 反組譯碼

    • 執行緒

    • 暫存器

    • 處理序

    • 模組

請參閱

概念

Transact-SQL 資料庫偵錯限制

偵錯 Transact-SQL