システム カタログ ビュー (Transact-SQL)

適用対象: SQL Server Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

カタログ ビューは、SQL Server データベース エンジンによって使用される情報を返します。 カタログ ビューは、カタログ メタデータに対する最も一般的なインターフェイスであり、この情報のカスタマイズされた形式を取得、変換、および提示するための最も効率的な方法を提供するため、カタログ ビューを使用することをお勧めします。 ユーザーが使用できるすべてのカタログ メタデータは、カタログ ビューを介して公開されます。

注意

カタログ ビューには、レプリケーション、バックアップ、データベース メンテナンス プラン、SQL Server エージェント カタログ データに関する情報は含まれません。

解説

カタログ ビューの中には、他のカタログ ビューの行を継承するものもあります。 たとえば、 sys.tables カタログ ビューは sys.objects カタログ ビューから継承されます。 sys.objectsカタログ ビューは基本ビューと呼ばれ、ビューは派生ビューとsys.tables呼ばれます。 カタログ ビューは sys.tables 、テーブルに固有の列と、カタログ ビューから返されるすべての列を sys.objects 返します。 カタログ ビューは sys.objects 、ストアド プロシージャやビューなど、テーブル以外のオブジェクトの行を返します。 テーブルが作成されると、テーブルのメタデータが両方のビューで返されます。 2 つのカタログ ビューはテーブルに関する異なるレベルの情報を返しますが、このテーブルのメタデータには 1 つの名前と 1 つの object_idエントリしかありません。 まとめると次のようになります。

  • ベース ビューには列のサブセットと行のスーパーセットが含まれます。
  • 派生ビューには列のスーパーセットと行のサブセットが含まれます。

重要

SQL Serverの今後のリリースでは、列リストの末尾に列を追加することで、システム カタログ ビューの定義を拡張する可能性があります。 返される列の数が変わり、アプリケーションが壊れる可能性があるため、運用環境のコードで 構文 SELECT * FROM sys.<catalog_view_name> を使用することをお勧めします。

SQL Serverのカタログ ビューは、次のカテゴリに分類されています。

関連項目