TYPE_NAME (Transact-SQL)
Se aplica a: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Devuelve el nombre de tipo no calificado de un Id. de tipo específico.
Convenciones de sintaxis de Transact-SQL
Sintaxis
TYPE_NAME ( type_id )
Argumentos
type_id
Es el identificador del tipo que se va a utilizar. type_id es de tipo int y puede hacer referencia a un tipo de cualquier esquema al que el autor de la llamada tenga permiso de acceso.
Tipos de valor devuelto
sysname
Excepciones
Devuelve NULL si se produce un error o si el autor de la llamada no tiene permiso para ver el objeto.
En SQL Server, un usuario solo puede ver los metadatos de elementos protegibles que posea o para los que se le haya concedido permiso. Esto significa que las funciones integradas de emisión de metadatos, como TYPE_NAME, pueden devolver NULL si el usuario no tiene ningún permiso para el objeto. Para obtener más información, consulte Metadata Visibility Configuration.
Comentarios
TYPE_NAME devolverá un NULL cuando type_id no sea válido o cuando el autor de la llamada no cuente con los permisos necesarios para hacer referencia al tipo.
TYPE_NAME funciona con tipos de datos de sistema así como con tipos de datos definidos por el usuario. El tipo puede estar contenido en cualquier esquema, pero siempre se devuelve un nombre de tipo no calificado. Esto significa que el nombre no tiene el prefijo schema.
Las funciones del sistema se pueden usar en la lista de selección, en la cláusula WHERE y en cualquier lugar donde se permita una expresión. Para más información, vea Expresiones (Transact-SQL) y WHERE (Transact-SQL).
Ejemplos
El ejemplo siguiente devuelve el nombre del objeto, de la columna y del tipo perteneciente a cada columna de la tabla Vendor
de la base de datos AdventureWorks2022
.
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
Este es el 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)
Ejemplos: Azure Synapse Analytics y Sistema de la plataforma de análisis (PDW)
En este siguiente ejemplo se devuelve el valor de TYPE ID
para el tipo de datos del sistema con identificador 1
.
SELECT TYPE_NAME(36) AS Type36, TYPE_NAME(239) AS Type239;
GO
Para ver una lista de tipos, consulte sys.types.
SELECT * FROM sys.types;
GO
Vea también
TYPE_ID (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
Funciones de metadatos (Transact-SQL)