Udostępnij za pomocą


TYPE_ID (Transact-SQL)

Dotyczy:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)SQL Database w Microsoft Fabric

Zwraca identyfikator dla określonej nazwy typu danych.

Transact-SQL konwencje składni

Składnia

TYPE_ID ( [ schema_name ] type_name )   

Arguments

type_name
To nazwa typu danych. type_name jest typu nvarchar. type_name może być typem danych zdefiniowanym przez system lub użytkownika.

Typy zwracane

int

Exceptions

Zwraca wartość NULL w przypadku błędu lub jeśli obiekt wywołujący nie ma uprawnień do wyświetlania obiektu.

W programie SQL Server użytkownik może wyświetlać tylko metadane zabezpieczanych, które użytkownik jest właścicielem lub którym udzielono użytkownikowi uprawnień. Oznacza to, że wbudowane funkcje emitujące metadane, takie jak TYPE_ID, mogą zwracać NULL, jeśli użytkownik nie ma żadnych uprawnień do obiektu. Aby uzyskać więcej informacji, zobacz Konfiguracja widoczności metadanych.

Uwagi

TYPE_ID zwraca NULL, jeśli nazwa typu nie jest poprawna lub jeśli wywołujący nie ma wystarczających uprawnień do odwołania się do typu.

Przykłady

A. Wyszukiwanie wartości ID typu dla nazw jednoczęściowych i dwuczęściowych

Poniższy przykład zwraca identyfikator typu dla jedno- i dwuczęściowych nazw typów.

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. Wyszukanie TYPE ID typu danych systemu

Poniższy przykład zwraca dla TYPE IDdatetime typu danych systemu.

SELECT TYPE_NAME(TYPE_ID('datetime')) AS [TYPE_NAME]  
    ,TYPE_ID('datetime') AS [TYPE_ID];  
GO  

Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)

C: Wyszukanie TYPE ID systemu typu danych

Poniższy przykład zwraca dla TYPE IDdatetime typu danych systemu.

SELECT TYPE_NAME(TYPE_ID('datetime')) AS typeName,   
    TYPE_ID('datetime') AS typeID FROM table1;  

Zobacz też

TYPE_NAME (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
Funkcje metadanych (Transact-SQL)