TYPE_ID (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Gibt die ID für einen angegebenen Datentypnamen zurück.
Transact-SQL-Syntaxkonventionen
Syntax
TYPE_ID ( [ schema_name ] type_name )
Argumente
type_name
Der Name des Datentyps. type_name ist vom Typ nvarchar. type_name kann ein Systemdatentyp oder benutzerdefinierter Datentyp sein.
Rückgabetypen
int
Ausnahmen
Gibt NULL bei einem Fehler zurück oder wenn ein Aufrufer nicht über Berechtigungen zum Anzeigen des Objekts verfügt.
In SQL Server kann ein Benutzer nur die Metadaten sicherungsfähiger Elemente anzeigen, bei denen der Benutzer entweder der Besitzer ist oder für die dem Benutzer eine Berechtigung erteilt wurde. Dies bedeutet, dass Metadaten ausgebende integrierte Funktionen, z. B. TYPE_ID, möglicherweise NULL zurückgeben, wenn dem Benutzer für das Objekt keine Berechtigung erteilt wurde. Weitere Informationen finden Sie unter Metadata Visibility Configuration.
Bemerkungen
TYPE_ID gibt NULL zurück, wenn der Datentypname ungültig ist, oder wenn der Benutzer nicht die erforderliche Berechtigung besitzt, um den Datentyp zu verwenden.
Beispiele
A. Suchen der TYPE ID-Werte für aus ein oder zwei Teilen bestehende Typnamen
Im folgenden Beispiel wird die Datentyp-ID für ein- und zweiteilige Datentypnamen zurückgegeben.
USE tempdb;
GO
CREATE TYPE NewType FROM int;
GO
CREATE SCHEMA NewSchema;
GO
CREATE TYPE NewSchema.NewType FROM int;
GO
SELECT TYPE_ID('NewType') AS [1 Part Data Type ID],
TYPE_ID('NewSchema.NewType') AS [2 Part Data Type ID];
GO
B. Suchen der TYPE ID eines Systemdatentyps
Im folgenden Beispiel wird die TYPE ID
für den datetime
-Systemdatentyp zurückgegeben.
SELECT TYPE_NAME(TYPE_ID('datetime')) AS [TYPE_NAME]
,TYPE_ID('datetime') AS [TYPE_ID];
GO
Beispiele: Azure Synapse Analytics und Analytics-Plattformsystem (PDW)
C: Abrufen des TYPE ID-Werts eines Systemdatentyps
Im folgenden Beispiel wird die TYPE ID
für den datetime
-Systemdatentyp zurückgegeben.
SELECT TYPE_NAME(TYPE_ID('datetime')) AS typeName,
TYPE_ID('datetime') AS typeID FROM table1;
Siehe auch
TYPE_NAME (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
Metadatenfunktionen (Transact-SQL)