Freigeben über


Systeminformationsschemaansichten (Transact-SQL)

Gilt für:SQL ServerAzure SQL-DatenbankVerwaltete Azure SQL-InstanzSQL-Datenbank in Microsoft Fabric

Eine Informationsschemaansicht ist eine von mehreren Methoden, die SQL Server zum Abrufen von Metadaten bereitstellt. Informationsschemaansichten stellen eine interne, systemtabellenunabhängige Ansicht der SQL Server-Metadaten bereit. Mithilfe von Informationsschemaansichten können Anwendungen ordnungsgemäß funktionieren, obwohl erhebliche Änderungen an den zugrunde liegenden Systemtabellen vorgenommen wurden. Die in SQL Server enthaltenen Informationsschemaansichten entsprechen der ISO-Standarddefinition für die INFORMATION_SCHEMA.

Important

Einige Änderungen wurden an den Informationsschemaansichten vorgenommen, die die Abwärtskompatibilität unterbrechen. Diese Änderungen werden in den Artikeln für die spezifischen Ansichten beschrieben.

SQL Server unterstützt eine dreiteilige Benennungskonvention, wenn Sie auf den aktuellen Server verweisen. Der ISO-Standard unterstützt ebenfalls eine dreiteilige Benennungskonvention. Die Namen, die in den beiden Konventionen verwendet werden, sind jedoch unterschiedlich. Die Informationsschemaansichten werden in einem speziellen Schema namens INFORMATION_SCHEMAdefiniert. Dieses Schema ist in jeder Datenbank enthalten. Jede Informationsschemasicht enthält die Metadaten für alle in der jeweiligen Datenbank gespeicherten Datenobjekte. Die folgende Tabelle zeigt die Beziehungen zwischen den SQL Server-Namen und den SQL-Standardnamen.

SQL Server-Name Entsprechender SQL-Standardname
Database Catalog
Schema Schema
Object Object
Benutzerdefinierter Datentyp Domain

Diese Namenszuordnungskonvention gilt für die folgenden ISO-kompatiblen SQL Server-Ansichten.

Darüber hinaus enthalten einige Sichten Verweise auf verschiedene Klassen von Daten, z. B. Zeichendaten oder binäre Daten.

Wenn Sie auf die Informationsschemasichten verweisen, müssen Sie einen qualifizierten Namen verwenden, der den Namen des INFORMATION_SCHEMA-Schemas enthält. Beispiel:

USE AdventureWorks2022;
GO

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

Permissions

Die Sichtbarkeit der Metadaten in Informationsschemaansichten ist auf sicherungsfähige Elemente beschränkt, die ein Benutzer besitzt oder für den der Benutzer eine Berechtigung erteilt hat. Weitere Informationen finden Sie unter Metadata Visibility Configuration.

Informationsschemaansichten sind serverweit definiert und können daher nicht im Kontext einer Benutzerdatenbank verweigert werden. Für REVOKE oder DENY Zugriff (SELECT) muss die master Datenbank verwendet werden. Standardmäßig verfügt SELECTdie öffentliche Rolle über die Berechtigung "-permission" für alle Informationsschemaansichten, aber der Inhalt ist mit Metadatensichtregeln beschränkt.

Sie können den Zugriff auf Informationsschemaansichten in der Azure SQL-Datenbank nicht verweigern.