深談Visual Studio IDE
在向大家詳細介紹SQL Server調試的不同方法之前,首先讓大家了解下Visual Studio IDE,然后全面介紹SQL Server調試的不同方法,希望對大家有用。SQL Server 2000可以讓我們在查詢分析器中直接調試存儲過程(更多的信息請參看:用SQL Server 2000的查詢分析器調試存儲過程)到了現在的SQL Server 2005,這個功能被轉移到了SQL Servr Management Studio和Visual Studio IDE內。 使用這個技術,我們可以在Visual Studio中一步一步地調試存儲過程。而且你也可以在存儲過程中設置斷點,這樣當你調試你的程序時,這些斷點就會生效。
#t#SQL Server 2005的所有版本都支持調試功能(包括Express版)。 但是,只有Team Systems和Professional版本的Visual Studio才能在IDE內調試存儲過程。 簡而言之,如果你使用的是Visual Web Developer或者Visual Studio Standard版本的話,就不能在調試應用程序的時候,一步一步地調試存儲過程或者進入到存儲過程內部。
本文中,我將示例如何通過 Visual Studio IDE調試SQL Server 2005的存儲過程。我們既會看到如何在IDE中直接一步一步地調試存儲過程,也會看到如何給存儲過程設置斷點,并在調試應用程序的時候進入到斷點處。繼續往下看,你會知道得更多!
SQL Server調試的不同方法
現在的SQL Server 2005中,所有的數據庫調試都發生在Visual Studio IDE的內部。數據庫中的像存儲過程、觸發器和用戶自定義函數(UDFs)這樣的對象都是可以被調試的(譯者注:本文中提到的數據庫對象指的是存儲過程、觸發器或用戶自定義函數)。 Visual Studio提供了3種調試這些數據庫對象的方法。
◆數據庫中直接調試 – 在Visual Studio的服務器資源管理器中,右鍵單擊某個數據庫對象,然后選擇“單步執行××”。 例如,當你右鍵單擊一個存儲過程的時候,彈出菜單中就會包含一個“單步執行存儲過程”的選項。
◆應用程序調試 – 在數據庫對象內設置斷點,然后通過應用程序進行調試。當相關的ASP.NET程序處于調試狀態,并且調用了數據庫對象的時候,那么Visual Studio就會暫停在你所設置的斷點之處,從而允許我們一步一步地對T-SQL語句進行調試。
◆在SQL Server項目中調試 – 在Visual Studio中可以創建一個SQL Server項目。 該項目中可以包含T-SQL和數據庫對象,并且這些數據庫對象都可以通過SQL Server項目本身來調試。
關于這3種不同的SQL Server調試的更多信息,請參看:Overview of T-SQL and CLR Debugging in SQL Server 2005。
還有一個需要注意的地方就是,本文接下來所介紹的SQL Server調試是基于本地數據庫的。 當然,無論是本地數據庫還是遠程數據庫都是可以調試的。本地數據庫指的是數據庫部署在本機上;遠程數據庫指的是數據庫部署在本機之外的機器上。 調試本地數據庫不需要做額外的設置,但是調試遠程數據庫卻要復雜得多。
本文主要介紹的是如何在數據庫中直接調試,以及如何在ASP.NET程序中調試一個本地數據庫。詳細點說就是,我們將調試App_Data文件夾下的SQL Server 2005 Express版本的數據庫,你可以在本文的結尾處下載該數據庫及示例程序。以上介紹Visual Studio IDE,在今后的其它文章中我們再研究如何在SQL Server項目中調試數據庫。