したがって、 SqlCodeGuardは、T-SQLコードの静的分析のためのSQL Server Management Studioの無料アドインです。 さて、プラス他のいくつかの機能。
主な機能
コード内の潜在的なエラーを検索する
私が理解している限り、「これをしない方が良い」から「ここで確実に脱落する」、「ブレーキの理由はここにある」など、さまざまな種類の100以上の状況がサポートされています。
オブジェクト依存性検索
誰がどこで使用されているか(プロシージャ/関数/ビューが使用するテーブル)を決定し、逆問題を解決できます-誰がこのオブジェクトまたはそのオブジェクトを使用し、テーブルとビューに-使用方法(!)の使用-データのサンプリング/挿入/更新/削除。
分析されたデータベースで見つからなかったオブジェクトのリスト
副業。 たとえば、テーブル、プロシージャなどの名前のタイプミスを追跡できます。 ご存じのとおり、SQL Serverでは、存在しないプロシージャまたはテーブルを使用するプロシージャを作成したり、プロシージャ/ビューで使用されているオブジェクトを削除したりできます。 このようなエラーは実行段階でのみ発生するため、エンコード段階でエラーを検出することはかなりプラスです。
コード構造のツリー構造
複雑な手順に役立ちます-複雑なコードのロジックをすばやく表示/理解し、複雑さの単位「P」で手順/機能/表示の複雑さを評価することもできます。 同時に法令の数をカウントします。
製品の利点...
- 無料:)
- 多数のルール
- 単一のリクエストとデータベース全体の両方をチェックする機能
- Visual Studioおよびデータベースプロジェクトとの統合
- 速度(3000個のオブジェクトのデータベースは17秒でチェックされ、30Kオブジェクトのうち-150秒)
- 非推奨であり、近い将来にサポートが削除される(または既に削除されている)演算子および言語構成要素を見つけるための適切なルールのセット。 サーバーの新しいバージョンに移行するときにデータベースをすばやく分析できます。
また、大企業でのチーム開発に特に興味深いのは、アプリケーションでコード検証機能を使用できるようにする特別なAPIです。 たとえば、ビルドプロセスにSQLコード検証を埋め込むか、チェックインポリシーを実装できます。
...およびその欠陥
- ドキュメントの欠如。 ただし、インターフェイス自体は非常にシンプルですが、検証ルールをより詳細に説明することをお勧めします。
- SqlCodeGuardとデータベースプロジェクトを統合する方法は明確ではありません。 サイトでのサポートは宣言されていますが、それは明確ではありません-しかし、実際にはどうですか?
- 一部のエキゾチックな言語構成は認識されません。 また、キーワードを識別子(テーブル、列などの名前)としてつまずくことがあります。
継続的インテグレーションとインテグレーションを使用する「すぐに使える」機会があればいいのですが、これまでのところそうではありません。
簡単な要約
一般に、特定の欠点にもかかわらず、SqlCodeGuardは、個々の開発者、およびおそらく開発グループによる使用に非常に適しており、統一されたコード記述ポリシーを確保し、既存のデータベースの分析を簡素化します。