次の方法で共有


sp_datatype_info (Transact-SQL)

適用対象: SQL Server Azure Synapse Analytics

現在の環境でサポートされているデータ型に関する情報を返します。

Transact-SQL 構文表記規則

構文

sp_datatype_info
    [ [ @data_type = ] data_type ]
    [ , [ @ODBCVer = ] ODBCVer ]
[ ; ]

引数

[ @data_type = ] data_type

指定したデータ型のコード番号。 @data_typeint で、既定値は 0 です。 すべてのデータ型の一覧を表示するには、このパラメーターを省略します。

[ @ODBCVer = ] ODBCVer

使用される ODBC のバージョン。 @ODBCVertinyint で、既定値は 2 です。

リターン コードの値

なし。

結果セット

列名 データ型 説明
TYPE_NAME sysname DBMS に依存するデータ型。
DATA_TYPE smallint このデータ型のすべての列がマップされる ODBC 型のコードです。
PRECISION int データ ソースでのデータ型の最大有効桁数です。 NULL は、有効桁数が適用されないデータ型に対して返されます。 PRECISION列の戻り値は 10 進数です。
LITERAL_PREFIX varchar(32) 定数の前に使われる 1 つまたは複数の文字。 たとえば、文字型の場合は単一引用符 (')、バイナリの場合は 0x です。
LITERAL_SUFFIX varchar(32) 定数を終了するために使われる 1 つまたは複数の文字。 たとえば、文字型の場合は単一引用符 (') で、バイナリの場合は引用符は使用しません。
CREATE_PARAMS varchar(32) このデータ型の作成パラメーターの説明。 たとえば、 decimalprecision, scalefloatNULLvarcharmax_length
NULLABLE smallint NULL 値の許容を示します。

1 = null 値を許可します。
0 = null 値を許可しません。
CASE_SENSITIVE smallint 大文字と小文字を区別するかどうかを示します。

1 = この型のすべての列では大文字と小文字が区別されます (照合順序の場合)。
0 = この型のすべての列では、大文字と小文字が区別されません。
SEARCHABLE smallint 列の型の検索機能を示します。

1 = 検索できません。
2 = LIKE で検索可能。
3 = WHEREで検索可能。
4 = WHERE または LIKEで検索できます。
UNSIGNED_ATTRIBUTE smallint データ型の符号を示します。

1 = データ型は符号なし。
0 = データ型は符号付き。
MONEY smallint money データ型を示します。

1 = money データ型。
0 = money データ型ではありません。
AUTO_INCREMENT smallint 自動増分を示します。

1 = 自動作成。
0 = 自動インクリメントではありません。
NULL = この属性は適用できません。
アプリケーションは、この属性の列に値を挿入できますが、アプリケーションは列の値を更新できません。 ビットデータ型を除き、AUTO_INCREMENTは、正確な数値データ型と近似数値データ型のカテゴリに属するデータ型に対してのみ有効です。
LOCAL_TYPE_NAME sysname データ型のデータ ソースに依存する名前のローカライズされたバージョン。 たとえば、 DECIMAL はフランス語で DECIMALENULL は、ローカライズされた名前がデータ ソースでサポートされていない場合に返されます。
MINIMUM_SCALE smallint データ ソースでのデータ型の最小小数点以下桁数です。 データ型に固定スケールがある場合、 MINIMUM_SCALE 列と MAXIMUM_SCALE 列の両方にこの値が含まれます。 NULL はスケールが適用されない場合に返されます。
MAXIMUM_SCALE smallint データ ソースでのデータ型の最大小数点以下桁数です。 最大スケールがデータ ソースで個別に定義されていないが、代わりに最大有効桁数と同じに定義されている場合、この列には PRECISION 列と同じ値が含まれます。
SQL_DATA_TYPE smallint 記述子の TYPE フィールドに表示される SQL データ型の値。 この列は、datetime および ANSI interval データ型を除き、DATA_TYPE列と同じです。 このフィールドには常に値が返されます。
SQL_DATETIME_SUB smallint datetime または ANSI interval サブコード ( SQL_DATA_TYPE の値が SQL_DATETIME または SQL_INTERVALの場合)。 datetime ANSI interval 以外のデータ型の場合、このフィールドはNULL
NUM_PREC_RADIX int 列が保持できる最大数を計算する場合のビット数または桁数。 データ型が概数型である場合、この列に含まれる値は 2 で、複数のビットを示します。 正確な数値型の場合、この列には、数桁の 10 進数を示す 10 値が含まれています。 それ以外の場合、この列は NULL。 アプリケーションは、基数と精度を組み合わせて、その列が保持できる最大数を計算できます。
INTERVAL_PRECISION smallint @data_typeinterval の場合は間隔の先頭の有効桁数の値。それ以外の場合はNULL
USERTYPE smallint usertype systypes テーブルの値。

解説

sp_datatype_info は ODBC の SQLGetTypeInfo と同じです。 返される結果は、 DATA_TYPE 順に並べ替えられた後、データ型が対応する ODBC SQL データ型にどれだけ近づくかによって並べ替えます。

アクセス許可

public ロールのメンバーシップが必要です。

次の例では、-9@data_type値を指定して、sysname および nvarchar データ型の情報を取得します。

USE master;
GO
EXEC sp_datatype_info -9;
GO