共用方式為


資料庫程式碼分析規則擴充性概觀

Visual Studio Premium 和 Visual Studio Ultimate 附有程式碼分析規則,可回報資料庫程式碼中的 Transact-SQL 設計、命名和效能警告。 如需詳細資訊,請參閱分析資料庫程式碼以改善程式碼品質

如果內建程式碼分析規則未能涵蓋您想包含的特定 Transact-SQL 問題,您可以建立自訂資料庫程式碼分析規則。 例如,您可以建立自訂規則來避免使用 WAITFOR DELAY 陳述式,如逐步解說:撰寫 SQL 的自訂靜態程式碼分析規則組件所示。 若要建立自訂資料庫程式碼分析規則,您可以使用 Microsoft.Data.Schema.StaticCodeAnalysis 命名空間中的類別。

建立 Visual Studio 的自訂程式碼分析規則之前,您應了解資料庫程式碼分析規則各元件間的基本架構。

資料庫程式碼分析規則元件

下圖顯示資料庫程式碼分析規則元件的互動方式。

Database 版本靜態程式碼分析擴充性架構

用於擴充資料庫程式碼分析規則的架構。

當您在目前 Visual Studio 工作階段中使用資料庫程式碼分析規則功能時,不論是直接執行靜態程式碼分析 (如需詳細資訊,請參閱 HOW TO:分析 Transact-SQL 程式碼以找出錯誤) 或執行建置,所有規則都會根據您在專案中設定的方式載入和使用。 如需詳細資訊,請參閱 HOW TO:對資料庫程式碼的靜態分析啟用和停用特定規則。擴充管理員也會載入您已建立和註冊的任何自訂規則組件。 如需詳細資訊,請參閱 HOW TO:註冊和管理功能擴充

自訂程式碼分析規則類別繼承自 StaticCodeAnalysisRule 類別。 自訂規則類別會使用 DataSchemaModel 來管理 IModelElement 及其 Microsoft.Data.Schema.ScriptDom,兩者會傳遞至靜態程式碼分析引擎。 此外,資料結構描述模型會提供模型項目、關聯性和附註的查詢資訊給程式碼分析規則,而這些資訊會傳遞至錯誤管理員。

請參閱

工作

逐步解說:撰寫 SQL 的自訂靜態程式碼分析規則組件

HOW TO:註冊和管理功能擴充

HOW TO:將自訂功能擴充散發給小組成員

概念

擴充 Visual Studio 的資料庫功能

分析資料庫程式碼以改善程式碼品質

使用程式碼分析進行 Managed 程式碼品質分析