Transact-SQL (系統目錄檢視)

適用于:SQL ServerAzure SQL資料庫Azure SQL 受控執行個體Azure SynapseAnalytics AnalyticsPlatform System (PDW) Microsoft Fabric 倉儲中的 SQL 端點

目錄檢視會傳回SQL Server Database Engine 所使用的資訊。 建議您使用目錄檢視,因為它們是目錄中繼資料最一般性的介面,提供了取得、轉換和呈現這項資訊之自訂形式的最有效方法。 所有使用者能夠使用的目錄中繼資料都是利用目錄檢視公開的。

注意

目錄檢視不包含複寫、備份、資料庫維護計畫或SQL Server Agent目錄資料的相關資訊。

備註

部分目錄檢視繼承其他目錄檢視的資料列。 例如, sys.tables 目錄檢視繼承自 sys.objects 目錄檢視。 目錄 sys.objects 檢視稱為基底檢視,而 sys.tables 檢視稱為衍生檢視。 sys.tables目錄檢視會傳回資料表特有的資料行,以及目錄檢視傳回的所有資料 sys.objects 行。 sys.objects目錄檢視會傳回資料表以外的物件資料列,例如預存程式和檢視表。 建立資料表之後,這兩份檢視中都會傳回資料表的中繼資料。 雖然這兩個目錄檢視會傳回資料表的不同層級資訊,但此資料表的中繼資料中只有一個專案具有一個名稱和一個 object_id 。 這點可以摘要如下:

  • 基底檢視包含資料行的子集和資料列的超集。
  • 衍生檢視包含資料行的超集和資料列的子集。

重要

在未來的SQL Server版本中,Microsoft 可能會藉由將資料行新增至資料行清單結尾,來增強任何系統類別目錄檢視的定義。 我們建議您不要在實際執行的程式碼中使用 SELECT * FROM sys.<catalog_view_name> 語法,因為傳回的資料行數可能會變更和破壞應用程式。

SQL Server中的目錄檢視已組織成下列類別:

另請參閱