Freigeben über


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)