COLUMNS (Transact-SQL)
Applies to: SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) Microsoft Fabric の SQL 分析エンドポイント Microsoft Fabric のウェアハウス
現在のデータベースの現在のユーザーがアクセスできる列ごとに 1 行を返します。
これらのビューから情報を取得するには、 INFORMATION_SCHEMA.view_nameの完全修飾名を指定します。
列名 | データ型 | 説明 |
---|---|---|
TABLE_CATALOG | nvarchar(128) | テーブルの修飾子。 |
TABLE_SCHEMA | nvarchar(128) | テーブルを含むスキーマの名前。 重要: オブジェクトのスキーマを決定するために、INFORMATION_SCHEMA ビューを使わないでください。 INFORMATION_SCHEMA ビューが表すのは、オブジェクトのメタデータのサブセットのみです。 オブジェクトのスキーマを調べるための信頼できる唯一の方法は、 sys.objects カタログ ビューのクエリを実行することです。 |
TABLE_NAME | nvarchar(128) | テーブル名。 |
COLUMN_NAME | nvarchar(128) | 列名。 |
ORDINAL_POSITION | int | 列の識別番号。 |
COLUMN_DEFAULT | nvarchar(4000) | 列の既定値です。 |
IS_NULLABLE | varchar(3) | 列に NULL 値が許容されるかどうかを指定します。 この列で NULL が許可されている場合、この列は YES を返します。 その他の場合は NO が返されます。 |
DATA_TYPE | nvarchar(128) | システムにより提供されるデータ型。 |
CHARACTER_MAXIMUM_LENGTH | int | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大文字列長。 xmlおよび大きな値の型データの場合は -1。 その他の場合は NULL が返されます。 詳細については、「 データ型 (Transact-SQL)」を参照してください。 |
CHARACTER_OCTET_LENGTH | int | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大バイト長。 xmlおよび大きな値の型データの場合は -1。 その他の場合は NULL が返されます。 |
NUMERIC_PRECISION | tinyint | 数値データの概数、正確な数値データ、整数データ、または通貨データの有効桁数。 その他の場合は NULL が返されます。 |
NUMERIC_PRECISION_RADIX | smallint | 数値データの概数、正確な数値データ、整数データ、または通貨データの有効桁数の基数。 その他の場合は NULL が返されます。 |
NUMERIC_SCALE | int | 数値データの概数、正確な数値データ、整数データ、または通貨データの桁数。 その他の場合は NULL が返されます。 |
DATETIME_PRECISION | smallint | datetime および ISO interval データ型のサブタイプ コード。 その他のデータ型に対しては NULL が返されます。 |
CHARACTER_SET_CATALOG | nvarchar(128) | マスター返します。 これは、列が文字データまたは text データ型の場合、文字セットが配置されているデータベースを示します。 その他の場合は NULL が返されます。 |
CHARACTER_SET_SCHEMA | nvarchar(128) | 常に NULL が返されます。 |
CHARACTER_SET_NAME | nvarchar(128) | この列が文字データまたは text データ型の場合は、文字セットの一意の名前を返します。 その他の場合は NULL が返されます。 |
COLLATION_CATALOG | nvarchar(128) | 常に NULL が返されます。 |
COLLATION_SCHEMA | nvarchar(128) | 常に NULL が返されます。 |
COLLATION_NAME | nvarchar(128) | 列が文字データまたは text データ型の場合は、照合順序の一意の名前返します。 その他の場合は NULL が返されます。 |
DOMAIN_CATALOG | nvarchar(128) | 列が別名データ型の場合、この列はユーザー定義データ型が作成されたデータベース名です。 その他の場合は NULL が返されます。 |
DOMAIN_SCHEMA | nvarchar(128) | 列がユーザー定義データ型の場合、この列はユーザー定義データ型のスキーマの名前を返します。 その他の場合は NULL が返されます。 重要: INFORMATION_SCHEMA ビューを使用してデータ型のスキーマを決定しないでください。 型のスキーマを検索する唯一の信頼性の高い方法は、TYPEPROPERTY 関数を使用することです。 |
DOMAIN_NAME | nvarchar(128) | 列がユーザー定義データ型の場合、この列はユーザー定義データ型の名前です。 その他の場合は NULL が返されます。 |
解説
INFORMATION_SCHEMAのORDINAL_POSITION列。COLUMNS ビューは、COLUMNS_UPDATED関数によって返される列のビット パターンと互換性がありません。 COLUMNS_UPDATEDと互換性のあるビット パターンを取得するには、INFORMATION_SCHEMAのクエリを実行するときに COLUMNPROPERTY システム関数の ColumnID プロパティを参照する必要があります。COLUMNS ビュー。 次に例を示します。
USE AdventureWorks2022;
GO
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID
FROM AdventureWorks2022.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Person';
GO