Partager via


Vues de schéma d’informations système (Transact-SQL)

S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de données SQL dans Microsoft Fabric

Une vue de schéma d’informations est l’une des méthodes fournies par SQL Server pour obtenir des métadonnées. Les vues de schéma d’informations fournissent une vue interne indépendante de la table système des métadonnées SQL Server. Les vues de schéma d’informations permettent aux applications de fonctionner correctement, bien que des modifications significatives aient été apportées aux tables système sous-jacentes. Les vues de schéma d’informations incluses dans SQL Server sont conformes à la définition standard ISO pour le INFORMATION_SCHEMA.

Important

Certaines modifications ont été apportées aux vues de schéma d’informations qui interrompent la compatibilité descendante. Ces modifications sont décrites dans les articles pour les vues spécifiques.

SQL Server prend en charge une convention d’affectation de noms en trois parties lorsque vous faites référence au serveur actuel. La norme ISO prend également en charge la convention des noms en trois parties. Cependant, les noms utilisés dans les deux conventions sont différents. Les vues de schéma d’informations sont définies dans un schéma spécial nommé INFORMATION_SCHEMA. Ce schéma figure dans chaque base de données. Chaque vue de schémas d'informations comprend des métadonnées pour tous les objets de données stockés dans une base de données particulière. Le tableau suivant présente les relations entre les noms SQL Server et les noms standard SQL.

Nom SQL Server Nom standard SQL équivalent
Database Catalog
Schema Schema
Object Object
Type de données défini par l’utilisateur Domain

Cette convention de mappage de noms s’applique aux vues compatibles ISO SQL Server suivantes.

En outre, certaines vues comprennent des références à d'autres classes de données telles que les données de type caractère ou binaire.

Lorsque vous faites référence aux vues de schémas d'informations, vous devez utiliser un nom qualifié qui inclut le nom de schéma INFORMATION_SCHEMA. Par exemple:

USE AdventureWorks2022;
GO

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

Permissions

La visibilité des métadonnées dans les vues de schéma d’informations est limitée aux éléments sécurisables qu’un utilisateur possède ou sur lequel l’utilisateur reçoit une autorisation. Pour plus d'informations, consultez Metadata Visibility Configuration.

Les vues de schéma d’informations sont définies à l’échelle du serveur et ne peuvent donc pas être refusées dans le contexte d’une base de données utilisateur. Pour REVOKE ou DENY accéder (SELECT), la master base de données doit être utilisée. Par défaut, le rôle public dispose SELECTd’une autorisation pour toutes les vues de schéma d’informations, mais le contenu est limité avec les règles de visibilité des métadonnées.

Vous ne pouvez pas refuser l’accès aux vues de schéma d’informations dans Azure SQL Database.