TYPE_NAME (Transact-SQL)
Возвращает неполное имя типа с указанным идентификатором.
Синтаксические обозначения в Transact-SQL
Синтаксис
TYPE_NAME ( type_id )
Аргументы
- type_id
Идентификатор типа, который будет использован. Аргумент type_id имеет тип int и может ссылаться на тип в любой схеме, на доступ к которой у участника имеется разрешение.
Типы возвращаемых данных
sysname
Исключения
Возвращает значение NULL в случае ошибки или если участник не имеет разрешения на просмотр объекта.
В SQL Server пользователь может просматривать только метаданные защищаемых объектов, которыми он владеет или на которые ему были предоставлены разрешения. Это означает, что встроенные функции, создающие метаданные, такие как TYPE_NAME, могут вернуть значение NULL в случае, если пользователь не имеет разрешений на объект. Дополнительные сведения см. в разделе Настройка видимости метаданных.
Замечания
Функция TYPE_NAME возвращает значение NULL, если аргумент type_id недопустим или у вызывающего объекта недостаточно разрешений для создания ссылки на этот тип.
Функция TYPE_NAME используется и для системных, и для пользовательских типов данных. Этот тип может содержаться в любой схеме, но неполное имя типа возвращается всегда. Это значит, что у имени отсутствует префикс schema**.**.
Системные функции можно использовать в списке выбора, в предложении WHERE и в любом месте, где разрешается указывать выражение. Дополнительные сведения см. в разделах Выражения (Transact-SQL) и Предложение WHERE (Transact-SQL).
Примеры
В следующих примерах возвращается имя объекта, имя столбца и имя типа для каждого столбца в таблице Vendor базы данных AdventureWorks2012 .
USE AdventureWorks2012;
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
Ниже приводится результирующий набор.
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)