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


TYPE_ID (Transact-SQL)

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

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

Синтаксис

TYPE_ID ( [ schema_name ] type_name ) 

Аргументы

  • type_name
    Имя типа данных. Аргумент type_name имеет тип nvarchar. Аргумент type_name может быть системным или пользовательским типом данных.

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

int

Исключения

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

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

Замечания

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

Примеры

A. Поиск значений функции TYPE ID для имен типов, состоящих из одной и двух частей

В следующем примере возвращается идентификатор для имен типов, состоящих из одной и двух частей.

USE tempdb;
GO
CREATE TYPE NewType FROM int;
GO
CREATE SCHEMA NewSchema;
GO
CREATE TYPE NewSchema.NewType FROM int;
GO
SELECT TYPE_ID('NewType') AS [1 Part Data Type ID],
       TYPE_ID('NewSchema.NewType') AS [2 Part Data Type ID];
GO

Б. Поиск значения функции TYPE ID для системного типа данных

В следующем примере возвращается значение TYPE ID для системного типа данных datetime.

SELECT TYPE_NAME(TYPE_ID('datetime')) AS [TYPE_NAME]
    ,TYPE_ID('datetime') AS [TYPE_ID];
GO