Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Base de Dados SQL do Azure
Azure SQL Managed Instance
Azure Synapse Analytics
Endpoint de análise SQL no Microsoft Fabric
Armazém no Microsoft Fabric
Base 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
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