大多數開發人員都自豪地宣稱他們編寫的代碼是沒有錯誤的
但是實際上我們都知道錯誤
不論是邏輯上的還是物理上的
都會發生在最好的項目裡
也就是說
軟件開發過程中最耗時間的任務之一就是調試
我們都曾經追蹤過難以琢磨的錯誤
因此
大多數開發工具包都會包括調試工具
用以幫助查找錯誤
非常感謝微軟從
版開始就向SQL服務器環境裡加入了這樣一個工具
讓我們更加仔細地看看這個順手的工具
看在日常編程的工作中如何使用它
它在哪兒?
SQL的
服務器調試界面
(SDI)能夠從
查詢分析器
客戶端進入
找到
查詢分析器對象浏覽器
裡的存儲過程
見圖A
再右擊要操作的過程名稱
會彈出一個菜單
菜單上有
調試
選項
在你能夠使用SDI以前
SQL服務器管理員必須給你足夠的訪問權限
所以要查一查確保你有這個權限
圖A
查詢分析器
提供了存儲過程
調試
選項
一旦選擇了
調試
選項
圖B裡的對話框會出現
它能讓你為存儲過程提供任何所需要的參數
一旦輸入了參數
點擊OK按紐開始調試過程
圖B
你可以為調試過程輸入存儲過程的參數
為了說明問題
我選擇了位於Northwind數據庫裡的SalesByCategory存儲過程
我加入了圖B(@CategoryName=Beverages和@OrdYear=
)裡的參數就開始進行調試了
你一次只能進行一個調試過程
圖C是允許你使用代碼的調試窗
圖C
調試界面
這個調試窗口一共有五個面板
最大的顯示框是主代碼面板
它顯示著當前正在執行的存儲過程的代碼
還包含有大量控制按鈕(我會在後面談到它們)
緊挨在主顯示框下面最左邊的面板包含有局部變量
包括傳遞給過程的參數和代碼裡聲明的變量
中間的面板包含有全局變量
右邊的面板是調用棧
其中包含有執行過程的列表
如果某個過程調用另一個過程
這個調用棧就會擴展
最底部的面板顯示著正在運行的過程的輸出結果
不論是錯誤的結果還是所預期的結果
注意
圖C例子裡的被傳遞的值是在圖B局部變量裡輸入的
執行控制
調試器的值是在執行待考察代碼時它給你提供的自由
例如
你可以在存儲過程中設置斷點
執行會在斷點中斷直到你讓它繼續執行
在SDI裡
使用功能鍵(F
)和選擇主代碼窗上面的按鈕都可以設置斷點和特性
一共有十一個按鈕
我把它們列在了表A裡
表A
SDI的調試命令
你可以利用這些按鈕的優勢來幫你進行調試過程
它們能讓你執行代碼並查看變量的內容
此外
還可以用所需要的值對局部變量進行編輯和替換
圖D顯示了輸出面板裡示例參數的結果
圖D
存儲過程的輸出結果
SDI會拖累運行它的服務器的資源
所以應該嚴格地將其使用限制到開發或者測試環境裡
你不能在調試過程中編輯代碼
清理你的代碼
SQL的
服務器調試界面
是對SQL開發人員任何工具集強有力的補充
調試是必需的
不論你是在使用自己的存儲過程還是跳到另一個開發人員的程序裡
在你下一個項目裡好好利用這個工具的優勢吧
From:http://tw.wingwit.com/Article/program/SQLServer/201311/22088.html