Share via


TYPE_NAME (Transact-SQL)

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

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

TYPE_NAME ( type_id ) 

Argumentos

  • type_id
    É a ID do tipo que será usado. type_id é int e pode ser referir a um tipo em qualquer esquema que o chamador tenha permissão para acessar.

Tipos de retorno

sysname

Exceções

Retorna NULL em caso de 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 itens protegíveis de sua propriedade ou para os quais ele tenha permissão concedida. Isso significa que funções internas que emitem metadados, como TYPE_NAME, poderão retornar o NULL se o usuário não tiver nenhuma permissão para o objeto. Para obter mais informações, consulte Configuração de visibilidade de metadados e Solucionando problemas de visibilidade de metadados.

Comentários

TYPE_NAME retorna NULL quando type_id não é válido ou quando o chamador não tem permissão suficiente para fazer referência ao tipo.

TYPE_NAME funciona para tipos de dados de sistema e também para tipos de dados definidos pelo usuário. O tipo pode estar contido em qualquer esquema, mas um nome de tipo não qualificado sempre será retornado. Isto significa o nome não tem o prefixo schema**.**

As funções de sistema podem ser usadas na lista de seleção, na cláusula WHERE e em qualquer local onde uma expressão for permitida. Para obter mais informações, consulte Expressões (Transact-SQL) e WHERE (Transact-SQL).

Exemplos

O exemplo a seguir retorna o nome de objeto, nome de coluna e nome de tipo para cada coluna na tabela Vendor do banco de dados AdventureWorks2008R2.

USE AdventureWorks2008R2;
GO
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)