TYPE_ID (Transact-SQL)

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

指定されたデータ型名の ID を返します。

Transact-SQL 構文表記規則

構文

TYPE_ID ( [ schema_name ] type_name )   

Note

SQL Server 2014 (12.x) 以前のバージョンの Transact-SQL 構文を確認するには、以前のバージョンのドキュメントを参照してください。

引数

type_name
データ型の名前です。 type_name のデータ型は nvarcharです。 type_name は、システムまたはユーザー定義データ型。

戻り値の型

int

例外

エラーが発生した場合、または呼び出し元にオブジェクトの表示権限がない場合は、NULL が返されます。

SQL Server では、そのユーザーが所有している、または権限を与えられている、セキュリティ保護可能なアイテムのメタデータのみを表示できます。 つまり、ユーザーがオブジェクトに対する権限を与えられていない場合、メタデータを生成する TYPE_ID などの組み込み関数では NULL が返される可能性があります。 詳細については、「 Metadata Visibility Configuration」を参照してください。

解説

型名が有効でない場合、または呼び出し元に型を参照するための十分な権限がない場合、TYPE_ID は NULL を返します。

A. 1 つまたは 2 つの部分から成る型名の TYPE ID 値を検索する

次の例では、1 つまたは 2 つの部分から成る型名の 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  

B. システム データ型の TYPE ID を検索する

次の例では、TYPE ID システム データ型の datetime が返されます。

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

例: Azure Synapse Analytics、Analytics Platform System (PDW)

C: システム データ型の TYPE ID を検索する

次の例では、TYPE ID システム データ型の datetime が返されます。

SELECT TYPE_NAME(TYPE_ID('datetime')) AS typeName,   
    TYPE_ID('datetime') AS typeID FROM table1;  

参照

TYPE_NAME (Transact-SQL)
TYPEPROPERTY (Transact-SQL)
sys.types (Transact-SQL)
メタデータ関数 (Transact-SQL)