熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL Server >> 正文

使用SQL服務器內置的錯誤尋找器尋找和剖析錯誤

2013-11-15 14:37:47  來源: SQL Server 

  大多數開發人員都自豪地宣稱他們編寫的代碼是沒有錯誤的但是實際上我們都知道錯誤不論是邏輯上的還是物理上的都會發生在最好的項目裡也就是說軟件開發過程中最耗時間的任務之一就是調試我們都曾經追蹤過難以琢磨的錯誤因此大多數開發工具包都會包括調試工具用以幫助查找錯誤非常感謝微軟從版開始就向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
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.