Compartir a través de


TYPE_NAME (Transact-SQL)

Actualizado: 17 de julio de 2006

Devuelve el nombre de tipo no calificado de un Id. de tipo específico.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

TYPE_NAME ( type_id ) 

Argumentos

  • type_id
    Es el Id. del tipo que se va a utilizar. type_id es de tipo int y puede referirse a un tipo de cualquier esquema al que el autor de la llamada tenga permiso de acceso.

Tipos de valor devueltos

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 2005, un usuario sólo puede ver los metadatos de asegurables 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, vea Configuración de visibilidad de los metadatos y Solucionar problemas de visibilidad de los metadatos.

Notas

TYPE_NAME devolverá un valor de 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 utilizar en la lista de selección, en la cláusula WHERE y en cualquier lugar donde se permita una expresión. Para obtener 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 AdventureWorks.

USE AdventureWorks;
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

Éste es el conjunto de resultados.

obj_name  col_name                 type_name
--------- -----------------------  -------------------
Vendor    AccountNumber            AccountNumber
Vendor    ActiveFlag               Flag
Vendor    CreditRating             tinyint
Vendor    ModifiedDate             datetime
Vendor    Name                     Name
Vendor    PreferredVendorStatus    Flag
Vendor    PurchasingWebServiceURL  nvarchar
Vendor    VendorID                 int
(8 row(s) affected)

Vea también

Referencia

TYPE_ID (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
Funciones de metadatos (Transact-SQL)

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

17 de julio de 2006

Contenido nuevo:
  • Se ha agregado la sección Excepciones.