Viste del catalogo di sistema (Transact-SQL)

Si applica a: SQL Server Azure SQL DatabaseIstanza gestita di SQL di AzureAzure Synapse Analytics AnalyticsPlatform System (PDW)SQL Endpoint in Microsoft FabricWarehouse in Microsoft Fabric

Le viste del catalogo restituiscono informazioni utilizzate dal motore di database di SQL Server. È consigliabile utilizzare tali viste perché rappresentano l'interfaccia più immediata per l'accesso ai metadati del catalogo e sono inoltre lo strumento più efficiente per ottenere, trasformare e presentare tali informazioni in forme personalizzate. 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 SQL Server Agent dati del catalogo.

Commenti

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 è detta vista derivata. La sys.tables vista catalogo restituisce le colonne specifiche delle tabelle e anche tutte le colonne restituite dalla sys.objects vista del catalogo. La sys.objects vista 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 potrebbe 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:

Vedi anche