您可以使用 SQL Server Data Tools 所提供的工具,來判斷是否可以改善查詢、預存程序或腳本的效能。 例如,透過監視用戶端統計資料 (例如常用查詢的回應時間),您可以判斷是否需要變更資料表上的查詢或索引。 此類統計資料可以包括客戶端執行時間、查詢配置檔案以及發送和接收的封包/位元組。
此外,透過分析應用程式提交至資料庫的應用程式查詢和更新,以及這些查詢和更新如何與資料庫和資料庫綱目中包含的資料互動,可以更好地解決某些效能問題。 執行計劃以圖形方式顯示 SQL Server 查詢最佳化工具所選擇的資料擷取方法,並顯示特定語句和查詢的執行成本。 因此,它們可協助您瞭解 SQL Server 如何處理 SQL 查詢,並判斷導致效能減慢的原因。
使用用戶端統計資料
當您在 Transact-SQL 編輯器中執行指令碼或查詢時,您可以選擇收集用戶端統計資料,例如應用程式設定檔、網路和時間統計資料以進行執行。 這類指標可讓您衡量指令碼的效率,或對不同的指令碼進行基準測試。
若要切換用戶端統計資料的收集,請在 [Transact-SQL 資料編輯器] 開啟時,在 [ 資料 ] 功能表上,指向 [ Transact-SQL 編輯器],選取 [執行設定 ] 和 [包含用戶端統計資料]。 或者,選取「Transact-SQL 編輯器」工具列上的「 包括用戶端統計資料 」按鈕(右起第五個),或在 Transact-SQL 編輯器中按一下滑鼠右鍵,然後選取 「執行設定 」和 「包括用戶端統計資料」。 為了收集查詢的統計資料,您必須在執行之前開啟此功能。
如果您開啟用戶端統計資料,則在查詢執行時,[ 統計資料] 索引標籤會出現在 [訊息] 索引標籤旁邊。 如果您關閉用戶端統計資料,則不會顯示 [統計資料 ] 索引標籤。 連續查詢執行的統計資料會與平均值一起列出。
如需所收集統計資料的詳細資訊,請參閱 [查詢視窗統計資料] 窗格 和 [用戶端統計資料] 索引標籤。
使用執行計劃
執行計劃會顯示資料庫引擎如何導覽資料表,以及使用索引來存取或處理查詢或其他 DML 陳述式 (例如更新) 的資料。 這種圖形方法對於了解查詢的效能特性非常有用。
在 Transact-SQL 編輯器中開啟包含您要分析之查詢的 Transact-SQL 指令碼。 然後,您可以反白顯示要檢閱的程式碼,並選取編輯器工具列上的 [顯示預估執行計劃 ] 按鈕,以選擇顯示預估執行計劃。 如果您選取 [顯示預估執行計劃],則不會執行 Transact-SQL 查詢或批次。 相反地,會剖析腳本,並顯示資料庫引擎在實際執行查詢時最有可能使用的查詢執行計劃。
剖解析或執行指令碼之後,選取 執行計劃 索引標籤,以查看執行計劃輸出的圖形表示法。
圖形執行計劃輸出會從右到左、從上到下讀取。 會顯示所分析批次中的每個查詢,包括每個查詢的成本佔批次總成本的百分比。 若要檢視其他資訊,例如每個步驟的成本和作業,請將滑鼠停留在圖形計劃中的 邏輯和實體運算子圖示 上。
若要變更執行計劃的顯示,請在「執行計劃」上按一下右鍵,然後選取「放大」、「縮小」、「自訂縮放」或「縮放以符合」。 放大 和 縮小 使您能夠按固定比例來調整執行計劃。 自訂縮放可讓您 定義自己的顯示放大倍率,例如以 80% 縮放。 Zoom to Fit 會調整執行計劃以符合結果視窗。
執行計劃可以保存並稍後重新打開以供檢查。 若要這麼做,請以滑鼠右鍵按一下 執行計劃,然後選取 將執行計劃另存為。 之後,您可以在 Visual Studio 中開啟計劃,就像開啟任何其他類型的檔案一樣。
使用程式碼分析
您可以使用程式碼分析來探索指令碼中的潛在問題,例如設計、命名和效能問題。 資料庫專案的規則會組織成以特定區域為目標的預先定義規則集,而且您可以在 [專案屬性] 屬性頁面的 [程式碼分析] 索引標籤中啟用或停用任何規則。 在相同的索引標籤中,您可以指定每次建置專案時自動執行的程式碼分析,或是否將警告視為錯誤。
若要手動使用程式碼分析,請在 [方案總管 ] 中以滑鼠右鍵按一下您的專案,然後選取 [執行程式碼分析]。 程式碼分析警告會列在 「錯誤清單」 視窗中。 您可以按兩下警告,流覽至包含問題的原始程式碼,也可以使用 [顯示錯誤說明 ] 內容功能表來檢視警告的其他資訊和可能的更正。
如需程式碼分析的詳細資訊,請參閱 分析資料庫程式碼以改善程式碼品質。