Viste del catalogo di sistema (Transact-SQL)

Si applica a:SQL Server database SQL di Azure Istanza gestita di SQL di Azure Azure Synapse Analytics AnalyticsPlatform System (PDW)SQL analytics endpoint in Microsoft FabricWarehouse in Microsoft Fabric

Le viste del catalogo restituiscono informazioni utilizzate dal motore di database di SQL Server. È consigliabile usare le viste del catalogo perché sono l'interfaccia più generale per i metadati del catalogo e fornire il modo più efficiente per ottenere, trasformare e presentare forme personalizzate di queste informazioni. Tutti i metadati del catalogo disponibili per gli utenti vengono esposti tramite le viste del catalogo.

Nota

Le viste del catalogo non contengono informazioni sulla replica, il backup, il piano di manutenzione del database o i dati del catalogo di SQL Server Agent.

Osservazioni:

Alcune viste del catalogo ereditano le righe da altre viste del catalogo. Ad esempio, la vista del catalogo sys.tables eredita dalla vista del catalogo sys.objects . La sys.objects vista del catalogo viene definita vista di base e la sys.tables vista è denominata vista derivata. La sys.tables vista del catalogo restituisce le colonne specifiche delle tabelle e anche tutte le colonne restituite dalla sys.objects vista del catalogo. La sys.objects vista del catalogo restituisce righe per oggetti diversi da tabelle, ad esempio stored procedure e viste. Al termine della creazione di una tabella, i relativi metadati vengono restituiti in entrambe le viste. Anche se le due viste del catalogo restituiscono livelli diversi di informazioni sulla tabella, è presente una sola voce nei metadati per questa tabella con un nome e uno object_id. Questo processo può essere riepilogato nel modo seguente:

  • La vista di base contiene un subset di colonne e un superset di righe.
  • La vista derivata contiene un superset di colonne e un subset di righe.

Importante

Nelle versioni future di SQL Server, Microsoft può aumentare la definizione di qualsiasi vista del catalogo di sistema aggiungendo colonne alla fine dell'elenco di colonne. Non è consigliabile utilizzare la sintassi SELECT * FROM sys.<catalog_view_name> nel codice di produzione. Il numero di colonne restituite potrebbe infatti cambiare compromettendo il corretto funzionamento dell'applicazione.

Le viste del catalogo in SQL Server sono state organizzate nelle categorie seguenti: