システム カタログ ビュー (Transact-SQL)
適用対象: SQL Server
Azure SQL Database
Azure Synapse Analytics
Analytics Platform System (PDW)
カタログ ビューは、SQL Server データベース エンジンによって使用される情報を返します。 カタログ ビューはカタログ メタデータに対する最も一般的なインターフェイスであり、この情報のカスタマイズされた形式を取得、変換、および提示するための最も効率的な方法を提供するため、カタログ ビューを使用することをお勧めします。 ユーザーが使用できるすべてのカタログ メタデータは、カタログ ビューを通じて公開されます。
Note
カタログ ビューには、レプリケーション、バックアップ、データベース メンテナンス プラン、またはSQL Server エージェント カタログ データに関する情報は含まれません。
カタログ ビューの中には、他のカタログ ビューの行を継承するものもあります。 たとえば、 sys.tables カタログ ビューは sys.objects カタログ ビューから継承されます。 sys.objects カタログ ビューはベース ビューと呼ばれ、sys.tables ビューは派生ビューと呼ばれます。 sys.tables カタログ ビューではテーブルに固有の列のほか、sys.objects カタログ ビューで返されるすべての列が返されます。 sys.objects カタログ ビューでは、テーブル以外の、ストアド プロシージャやビューなどのオブジェクトの行が返されます。 テーブルが作成されると、テーブルのメタデータが両方のビューで返されます。 これら 2 つのカタログ ビューではテーブルに関する異なるレベルの情報が返されますが、このテーブルのメタデータ内のエントリは 1 つだけで、名前と object_id が、それぞれ 1 つだけ含まれています。 まとめると次のようになります。
- ベース ビューには列のサブセットと行のスーパーセットが含まれます。
- 派生ビューには列のスーパーセットと行のサブセットが含まれます。
重要
SQL Serverの今後のリリースでは、列リストの末尾に列を追加することで、システム カタログ ビューの定義が拡張される可能性があります。 返される列の数が変わり、アプリケーションが壊れる可能性があるため、実稼働コードでは SELECT * FROM sys.catalog_view_name 構文を使用しないようにすることをお勧めします。
SQL Serverのカタログ ビューは、次のカテゴリに分類されています。
Always On 可用性グループ カタログ ビュー (Transact-SQL)
CLR アセンブリ カタログ ビュー (Transact-SQL)
データベース ミラーリング監視サーバーのカタログ ビュー (Transact-SQL)
データベースとファイルのカタログ ビュー (Transact-SQL)
エンドポイントのカタログ ビュー (Transact-SQL)
拡張イベント カタログ ビュー (Transact-SQL)
拡張プロパティ カタログ ビュー (Transact-SQL)
Filestream および FileTable のカタログ ビュー (Transact-SQL)
メッセージ (エラーの場合) カタログ ビュー (Transact-SQL)
オブジェクト カタログ ビュー (Transact-SQL)
パーティション関数カタログ ビュー (Transact-SQL)
Resource Governor カタログ ビュー (Transact-SQL)
クエリ ストアのカタログ ビュー (Transact-SQL)
セキュリティ カタログ ビュー (Transact-SQL)
Service Broker カタログ ビュー (Transact-SQL)
サーバー全体の構成カタログ ビュー (Transact-SQL)
Azure Synapse Analytics と Parallel Data Warehouse のカタログ ビュー