Viste dello schema delle informazioni di sistema (Transact-SQL)

Si applica a: SQL Server database SQL di Azure Istanza gestita di SQL di Azure

Una visualizzazione dello schema delle informazioni è uno dei diversi metodi forniti da SQL Server per ottenere i metadati. Le viste dello schema delle informazioni forniscono una vista interna indipendente dalla tabella di sistema dei metadati di SQL Server. nonché garantiscono il corretto funzionamento delle applicazioni anche se sono state apportate modifiche significative alle tabelle di sistema sottostanti. Le viste dello schema delle informazioni incluse in SQL Server sono conformi alla definizione standard ISO per il INFORMATION_SCHEMA.

Importante

Alle viste degli schemi delle informazioni sono state apportate alcune modifiche che non garantiscono la compatibilità con le versioni precedenti. Tali modifiche sono descritte negli argomenti specifici relativi alle viste interessate.

SQL Server supporta una convenzione di denominazione in tre parti quando si fa riferimento al server corrente. La stessa convenzione di denominazione viene adottata anche dallo standard ISO. I nomi utilizzati nelle due convenzioni di denominazione sono tuttavia diversi. Le viste degli schemi delle informazioni sono definite in uno schema speciale denominato INFORMATION_SCHEMA. Questo schema è incluso in ogni database. Ogni vista dello schema delle informazioni include metadati per tutti gli oggetti dati archiviati nel database specifico. Nella tabella seguente vengono illustrate le relazioni tra i nomi di SQL Server e i nomi standard di SQL.

Nome SQL Server Nome SQL standard equivalente
Database Catalogo
Schema Schema
Object Object
Tipo di dati definito dall'utente Dominio

Questa convenzione di mapping dei nomi si applica alle viste compatibili con SQL Server ISO seguenti.

Alcune viste contengono inoltre riferimenti a classi di dati diverse, ad esempio dati di tipo carattere o dati binari.

Quando si fa riferimento alle viste dello schema delle informazioni, è necessario utilizzare un nome completo che includa il nome schema INFORMATION_SCHEMA. Ad esempio:

SELECT TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME, COLUMN_DEFAULT
FROM AdventureWorks2022.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = N'Product';

Autorizzazioni

La visibilità dei metadati nelle visualizzazioni dello schema delle informazioni è limitata alle entità a protezione diretta di cui un utente è proprietario o su cui l'utente ha ottenuto alcune autorizzazioni. Per altre informazioni, vedere Metadata Visibility Configuration.

Nota

Le viste dello schema delle informazioni sono definite a livello di server e pertanto non possono essere negate all'interno del contesto di un database utente. Per REVOCARE o NEGARE l'accesso (SELECT), è necessario usare il database master. Per impostazione predefinita, il ruolo pubblico dispone dell'autorizzazione SELECT per tutte le viste dello schema delle informazioni, ma il contenuto è limitato con le regole di visibilità dei metadati.

Vedi anche