Поделиться через


TYPE_NAME (Transact-SQL)

Изменения: 17 июля 2006 г.

Возвращает неполное имя типа с указанным идентификатором.

Значок ссылки на разделСинтаксические обозначения в Transact-SQL

Синтаксис

TYPE_NAME ( type_id ) 

Аргументы

  • type_id
    Идентификатор типа, который будет использован. Аргумент type_id имеет тип int и может ссылаться на тип в любой схеме, на доступ к которой у вызывающего объекта имеется разрешение.

Типы возвращаемых данных

sysname

Исключения

Возвращает значение NULL в случае ошибки или если участник не имеет разрешений для просмотра объекта.

В SQL Server 2005 пользователь может просматривать только метаданные защищаемых объектов, которыми он владеет или на которые ему были предоставлены разрешения. Это означает, что встроенные функции, создающие метаданные, такие как TYPE_NAME могут вернуть значение NULL в случае, если пользователь не имеет разрешений на объект. Дополнительные сведения см. в разделах Настройка видимости метаданных и Устранение неполадок, связанных с видимостью метаданных.

Замечания

Функция TYPE_NAME возвращает значение NULL, если аргумент type_id недопустим или у вызывающего объекта недостаточно разрешений для создания ссылки на этот тип.

Функция TYPE_NAME используется и для системных, и для пользовательских типов данных. Этот тип может содержаться в любой схеме, но неполное имя типа возвращается всегда. Это значит, что у имени отсутствует префикс schema**.**.

Системные функции можно использовать в списке выбора, в предложении WHERE и в любом месте, где разрешается указывать выражение. Дополнительные сведения см. в разделах Выражения (Transact-SQL) и Предложение WHERE (Transact-SQL).

Примеры

В следующих примерах возвращается имя объекта, имя столбца и имя типа для каждого столбца в таблице Vendor базы данных 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

Ниже приводится результирующий набор.

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)

См. также

Справочник

TYPE_ID (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
Функции метаданных (Transact-SQL)

Справка и поддержка

Получение помощи по SQL Server 2005

Журнал изменений

Версия Журнал

17 июля 2006 г.

Новое содержимое
  • добавлен раздел «Исключения».