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, если имя типа неверно или если вызывающий не имеет необходимых разрешений на использование этого типа.
Примеры
А.Поиск значений функции 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