Partilhar via


TYPE_NAME (Transact-SQL)

Aplica-se a:Banco de Dados SQL doAzureInstância Gerenciada de SQL do AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)Banco de Dados SQL no Microsoft Fabric

Devolve o nome de tipo não qualificado de um ID de tipo especificado.

Transact-SQL convenções de sintaxe

Sintaxe

TYPE_NAME ( type_id )   

Arguments

type_id
É o ID do tipo que será utilizado. type_id é um int, e pode referir-se a um tipo em qualquer esquema que o chamador tenha permissão para aceder.

Tipos de devolução

sysname

Exceptions

Retorna NULL no erro ou se um chamador não tiver permissão para exibir o objeto.

No SQL Server, um usuário só pode exibir os metadados de protegíveis que o usuário possui ou nos quais o usuário recebeu permissão. Isto significa que funções incorporadas que emitem metadados, como TYPE_NAME, podem devolver NULL se o utilizador não tiver qualquer permissão sobre o objeto. Para obter mais informações, consulte Configuração de visibilidade de metadados.

Observações

TYPE_NAME devolverá NULL quando type_id não for válido ou quando o chamador não tiver permissão suficiente para referenciar o tipo.

TYPE_NAME funciona para tipos de dados do sistema e também para tipos de dados definidos pelo utilizador. O tipo pode estar contido em qualquer esquema, mas um nome de tipo não qualificado é sempre devolvido. Isto significa que o nome não tem o prefixo schema.

As funções do sistema podem ser usadas na lista de seleção, na cláusula WHERE e em qualquer lugar em que uma expressão seja permitida. Para mais informações, veja Expressões (Transact-SQL) e ONDE (Transact-SQL).

Examples

O exemplo seguinte devolve o nome do objeto, nome da coluna e nome do tipo para cada coluna na Vendor tabela da AdventureWorks2025 base de dados.

SELECT o.name AS obj_name, c.name AS col_name,  
       TYPE_NAME(c.user_type_id) AS type_name  
FROM sys.objects AS o   
JOIN sys.columns AS c  ON o.object_id = c.object_id  
WHERE o.name = 'Vendor'  
ORDER BY col_name;  
GO  

Aqui está o conjunto de resultados.

obj_name        col_name                  type_name
--------------- ------------------------ --------------
Vendor          AccountNumber            AccountNumber
Vendor          ActiveFlag               Flag
Vendor          BusinessEntityID         int
Vendor          CreditRating             tinyint
Vendor          ModifiedDate             datetime
Vendor          Name                     Name
Vendor          PreferredVendorStatus    Flag
Vendor          PurchasingWebServiceURL  nvarchar

(8 row(s) affected)

Exemplos: Azure Synapse Analytics and Analytics Platform System (PDW)

O exemplo seguinte devolve o TYPE ID para o tipo de dados com id 1.

SELECT TYPE_NAME(36) AS Type36, TYPE_NAME(239) AS Type239;  
GO  

Para uma lista de tipos, consulta sys.types.

SELECT * FROM sys.types;  
GO  

Ver também

TYPE_ID (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
Funções de metadados (Transact-SQL)