Transact-SQL (系統目錄檢視)
適用于:SQL Server
Azure SQL資料庫
Azure SQL 受控執行個體Azure Synapse
Analytics Analytics
Platform 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中的目錄檢視已組織成下列類別:
Always On 可用性群組目錄檢視 (Transact-SQL)
Database Mail 檢視 (Transact-SQL)
Filestream 和 FileTable 目錄檢視 (Transact-SQL)