適用対象: .NET Framework .NET
.NET Standard
Microsoft SqlClient Data Provider for SQL Server では、一般的なスキーマ コレクションに加え、追加のスキーマ コレクションもサポートされています。 スキーマ コレクションは、使用している SQL Server のバージョンによって多少異なります。 サポートされるスキーマ コレクションの一覧を確認するには、引数を指定しないで、またはスキーマ コレクション名に "MetaDataCollections" を指定して、GetSchema メソッドを呼び出します。 これにより、サポートされるスキーマ コレクションの一覧、それぞれがサポートする制限数、および使用する識別子部分の数と共に、DataTable が返されます。
データベース
| ColumnName | データ型 | 説明 |
|---|---|---|
| database_name | 文字列 | データベース名。 |
| dbid | Int16 | データベース ID。 |
| 作成日 | DateTime | データベースの作成日。 |
外部キー
| ColumnName | データ型 | 説明 |
|---|---|---|
| CONSTRAINT_CATALOG | 文字列 | 制約が属するカタログ。 |
| CONSTRAINT_SCHEMA | 文字列 | 制約を含むスキーマ。 |
| CONSTRAINT_NAME | 文字列 | 名前。 |
| TABLE_CATALOG | 文字列 | 制約が含まれるテーブル名。 |
| TABLE_SCHEMA | 文字列 | テーブルを含むスキーマ。 |
| TABLE_NAME | 文字列 | テーブル名 |
| CONSTRAINT_TYPE | 文字列 | 制約の型。 "FOREIGN KEY" だけが許可されています。 |
| IS_DEFERRABLE | 文字列 | 制約を遅延可能にするかどうかを指定します。 NO が返されます。 |
| 当初は保留 | 文字列 | 制約を最初に遅延可能にするかどうかを指定します。 NO が返されます。 |
インデックス
| ColumnName | データ型 | 説明 |
|---|---|---|
| 制約_カタログ | 文字列 | インデックスが属するカタログ。 |
| 制約スキーマ | 文字列 | インデックスを含むスキーマ。 |
| constraint_name | 文字列 | インデックス名。 |
| table_catalog | 文字列 | インデックスが関連付けられているテーブル名。 |
| table_schema | 文字列 | インデックスが関連付けられているテーブルを含むスキーマ。 |
| table_name | 文字列 | テーブル名。 |
| index_name | 文字列 | インデックス名。 |
| type_desc | 文字列 | インデックスの種類。次のいずれかの値になります。 -ヒープ -クラスター 化 非クラスタ化 -Xml - 空間 |
インデックス列
| ColumnName | データ型 | 説明 |
|---|---|---|
| constraint_catalog | 文字列 | インデックスが属するカタログ。 |
| constraint_schema | 文字列 | インデックスを含むスキーマ。 |
| constraint_name | 文字列 | インデックス名。 |
| table_catalog | 文字列 | インデックスが関連付けられているテーブル名。 |
| table_schema | 文字列 | インデックスが関連付けられているテーブルを含むスキーマ。 |
| table_name | 文字列 | テーブル名。 |
| column_name | 文字列 | インデックスが関連付けられている列名。 |
| ordinal_position | Int32 | 列の序数位置。 |
| KeyType | Byte | オブジェクトの型。 |
| index_name | 文字列 | インデックス名。 |
プロシージャ
| ColumnName | データ型 | 説明 |
|---|---|---|
| SPECIFIC_CATALOG | 文字列 | カタログ固有の名前。 |
| SPECIFIC_SCHEMA | 文字列 | スキーマ固有の名前。 |
| SPECIFIC_NAME | 文字列 | カタログ固有の名前。 |
| ROUTINE_CATALOG | 文字列 | ストアドプロシージャが属するカタログ。 |
| ROUTINE_SCHEMA | 文字列 | ストアド プロシージャを含むスキーマ。 |
| ROUTINE_NAME | 文字列 | ストアド プロシージャの名前。 |
| ROUTINE_TYPE | 文字列 | ストアド プロシージャの PROCEDURE と関数の FUNCTION を返します。 |
| 作成済み | DateTime | プロシージャが作成された日時。 |
| LAST_ALTERED | DateTime | プロシージャの最終更新日時。 |
プロシージャ パラメーター
| ColumnName | データ型 | 説明 |
|---|---|---|
| SPECIFIC_CATALOG | 文字列 | このパラメーターを受け取るプロシージャのカタログ名。 |
| SPECIFIC_SCHEMA | 文字列 | このパラメーターを受け取るプロシージャを含むスキーマ。 |
| SPECIFIC_NAME | 文字列 | このパラメーターを受け取るとるプロシージャ名。 |
| ORDINAL_POSITION | Int32 | パラメーターの位置を示す 1 から始まる序数。 プロシージャの戻り値については 0 になります。 |
| PARAMETER_MODE | 文字列 | 入力パラメーターでは IN が返され、出力パラメーターでは OUT が返され、I/O パラメーターでは INOUT が返されます。 |
| IS_RESULT | 文字列 | プロシージャの結果が関数を表す場合には YES が返されます。 その他の場合は NO が返されます。 |
| AS_LOCATOR | 文字列 | ロケーターとして宣言された場合は YES が返されます。 その他の場合は NO が返されます。 |
| PARAMETER_NAME | 文字列 | パラメーターの名前。 関数の戻り値に相当する場合は NULL になります。 |
| DATA_TYPE | 文字列 | システムにより提供されるデータ型。 |
| 最大文字数 | Int32 | バイナリまたは文字データ型の文字列の最大長。 その他の場合は NULL が返されます。 |
| CHARACTER_OCTET_LENGTH | Int32 | バイナリまたは文字データ型の最大バイト数。 その他の場合は NULL が返されます。 |
| COLLATION_CATALOG | 文字列 | パラメーター照合のカタログ名。 文字型の 1 つでない場合は、NULL が返されます。 |
| COLLATION_SCHEMA | 文字列 | 常に NULL が返されます。 |
| COLLATION_NAME | 文字列 | パラメーター照合の名前。 文字型の 1 つでない場合は、NULL が返されます。 |
| CHARACTER_SET_CATALOG | 文字列 | パラメーターの文字セットのカタログ名。 文字型の 1 つでない場合は、NULL が返されます。 |
| CHARACTER_SET_SCHEMA | 文字列 | 常に NULL が返されます。 |
| CHARACTER_SET_NAME | 文字列 | パラメーターの文字セット名。 文字型の 1 つでない場合は、NULL が返されます。 |
| NUMERIC_PRECISION | Byte | 近似値データ、正確な数値データ、整数データ、または通貨データの精度。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION_RADIX | Int16 | 近似数値データ、正確な数値データ、整数データ、または通貨データの精度の基数。 その他の場合は NULL が返されます。 |
| NUMERIC_SCALE | Int32 | 近似数値データ、厳密数値データ、整数データ、または通貨データの位取り。 その他の場合は NULL が返されます。 |
| DATETIME_PRECISION | Int16 | パラメーターの型が datetime または smalldatetime の場合の秒の小数部の精度。 その他の場合は NULL が返されます。 |
| INTERVAL_TYPE | 文字列 | NULL。 将来 SQL Server で使用するために予約されています。 |
| INTERVAL_PRECISION | Int16 | NULL。 将来 SQL Server で使用するために予約されています。 |
テーブル
| ColumnName | データ型 | 説明 |
|---|---|---|
| TABLE_CATALOG | 文字列 | テーブルのカタログ。 |
| TABLE_SCHEMA | 文字列 | テーブルを含むスキーマ。 |
| TABLE_NAME | 文字列 | テーブル名。 |
| TABLE_TYPE | 文字列 | テーブルの型。 VIEWまたは BASE TABLEを指定できます。 |
[列]
| ColumnName | データ型 | 説明 |
|---|---|---|
| TABLE_CATALOG | 文字列 | テーブルのカタログ。 |
| TABLE_SCHEMA | 文字列 | テーブルを含むスキーマ。 |
| TABLE_NAME | 文字列 | テーブル名。 |
| COLUMN_NAME | 文字列 | 列名。 |
| ORDINAL_POSITION | Int32 | 列の識別番号。 |
| COLUMN_DEFAULT | 文字列 | 列の既定値。 |
| IS_NULLABLE | 文字列 | 列に NULL 値が許容されるかどうかを指定します。 この列に NULL が許容される場合は、YES が返されます。 その他の場合は NO が返されます。 |
| DATA_TYPE | 文字列 | システムにより提供されるデータ型。 |
| 最大文字数 | Int32 – Sql8、Int16 – Sql7 | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大文字列長。 その他の場合は NULL が返されます。 |
| CHARACTER_OCTET_LENGTH | Int32 – SQL8、Int16 – Sql7 | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大バイト長。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION | 符号なしバイト | 近似値データ、正確な数値データ、整数データ、または通貨データの精度。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION_RADIX | Int16 | 近似数値データ、正確な数値データ、整数データ、または通貨データの精度の基数。 その他の場合は NULL が返されます。 |
| NUMERIC_SCALE | Int32 | 近似数値データ、厳密数値データ、整数データ、または通貨データの位取り。 その他の場合は NULL が返されます。 |
| DATETIME_PRECISION | Int16 | 日付時刻データ型および SQL-92 interval データ型のサブタイプ コード。 その他のデータ型に対しては NULL が返されます。 |
| CHARACTER_SET_CATALOG | String | 列が文字データ型またはテキスト データ型である場合は、文字セットがあるデータベースを示すマスターが返されます。 その他の場合は NULL が返されます。 |
| CHARACTER_SET_SCHEMA | 文字列 | 常に NULL が返されます。 |
| CHARACTER_SET_NAME | 文字列 | この列が文字データ型またはテキスト データ型である場合、文字セットの一意の名前が返されます。 その他の場合は NULL が返されます。 |
| COLLATION_CATALOG | 文字列 | 列が文字データ型またはテキスト データ型である場合は、照合順序が定義されているデータベースを示すマスターが返されます。 その他の場合、この列は NULL になります。 |
| IS_FILESTREAM | 文字列 | 列に FILESTREAM 属性がある場合は YES。 列には FILESTREAM 属性がない場合は NO。 |
| IS_SPARSE | 文字列 | 列がスパース列である場合は YES。 列がスパース列でない場合は NO。 |
| IS_COLUMN_SET | 文字列 | その列が列セット列である場合は YES。 列が列セット列でない場合は NO。 |
AllColumns
AllColumns スキーマ コレクションは、スパース列をサポートするために使用されます。 AllColumns の制限と生成される DataTable スキーマは、Columns スキーマ コレクションと同じです。 相違は、Columns スキーマ コレクションに含まれていない列セットの列が AllColumns に含まれている点のみです。 次の表では、それらの列について説明します。
| ColumnName | DataType | 説明 |
|---|---|---|
| TABLE_CATALOG | 文字列 | テーブルのカタログ。 |
| TABLE_SCHEMA | String | テーブルを含むスキーマ。 |
| TABLE_NAME | 文字列 | テーブル名。 |
| COLUMN_NAME | 文字列 | 列名。 |
| ORDINAL_POSITION | Int32 | 列の識別番号。 |
| COLUMN_DEFAULT | 文字列 | 列の既定値。 |
| IS_NULLABLE | 文字列 | 列に NULL 値が許容されるかどうかを指定します。 この列に NULL が許容される場合は、YES が返されます。 その他の場合は NO が返されます。 |
| DATA_TYPE | 文字列 | システムにより提供されるデータ型。 |
| 最大文字数 | Int32 | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大文字列長。 その他の場合は NULL が返されます。 |
| CHARACTER_OCTET_LENGTH | Int32 | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大バイト長。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION | 符号なしバイト | 近似値データ、正確な数値データ、整数データ、または通貨データの精度。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION_RADIX | Int16 | 近似数値データ、正確な数値データ、整数データ、または通貨データの精度の基数。 その他の場合は NULL が返されます。 |
| NUMERIC_SCALE | Int32 | 近似数値データ、厳密数値データ、整数データ、または通貨データの位取り。 その他の場合は NULL が返されます。 |
| DATETIME_PRECISION | Int16 | 日付時刻データ型および SQL-92 interval データ型のサブタイプ コード。 その他のデータ型に対しては NULL が返されます。 |
| CHARACTER_SET_CATALOG | 文字列 | 列が文字データ型またはテキスト データ型である場合は、文字セットがあるデータベースを示すマスターが返されます。 その他の場合は NULL が返されます。 |
| CHARACTER_SET_SCHEMA | 文字列 | 常に NULL が返されます。 |
| CHARACTER_SET_NAME | 文字列 | この列が文字データ型またはテキスト データ型である場合、文字セットの一意の名前が返されます。 その他の場合は NULL が返されます。 |
| COLLATION_CATALOG | 文字列 | 列が文字データ型またはテキスト データ型である場合は、照合順序が定義されているデータベースを示すマスターが返されます。 その他の場合、この列は NULL になります。 |
| IS_FILESTREAM | 文字列 | 列に FILESTREAM 属性がある場合は YES。 列には FILESTREAM 属性がない場合は NO。 |
| IS_SPARSE | 文字列 | 列がスパース列である場合は YES。 列がスパース列でない場合は NO。 |
| IS_COLUMN_SET | 文字列 | その列が列セット列である場合は YES。 列が列セット列でない場合は NO。 |
ColumnSetColumns
ColumnSetColumns スキーマ コレクションは、スパース列をサポートするために使用されます。 ColumnSetColumns スキーマ コレクションは、列セット内のすべての列のスキーマを返します。 次の表では、それらの列について説明します。
| ColumnName | データ型 | 説明 |
|---|---|---|
| TABLE_CATALOG | 文字列 | テーブルのカタログ。 |
| TABLE_SCHEMA | 文字列 | テーブルを含むスキーマ。 |
| TABLE_NAME | 文字列 | テーブル名。 |
| COLUMN_NAME | 文字列 | 列名。 |
| ORDINAL_POSITION | Int32 | 列の識別番号。 |
| COLUMN_DEFAULT | 文字列 | 列の既定値。 |
| IS_NULLABLE | 文字列 | 列に NULL 値が許容されるかどうかを指定します。 この列に NULL が許容される場合は、YES が返されます。 その他の場合は NO が返されます。 |
| DATA_TYPE | 文字列 | システムにより提供されるデータ型。 |
| 最大文字数 | Int32 | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大文字列長。 その他の場合は NULL が返されます。 |
| CHARACTER_OCTET_LENGTH | Int32 | バイナリ データ、文字データ、またはテキストおよびイメージ データの最大バイト長。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION | 符号なしバイト | 近似値データ、正確な数値データ、整数データ、または通貨データの精度。 その他の場合は NULL が返されます。 |
| NUMERIC_PRECISION_RADIX | Int16 | 近似数値データ、正確な数値データ、整数データ、または通貨データの精度の基数。 その他の場合は NULL が返されます。 |
| NUMERIC_SCALE | Int32 | 近似数値データ、厳密数値データ、整数データ、または通貨データの位取り。 その他の場合は NULL が返されます。 |
| DATETIME_PRECISION | Int16 | 日付時刻データ型および SQL-92 interval データ型のサブタイプ コード。 その他のデータ型に対しては NULL が返されます。 |
| CHARACTER_SET_CATALOG | 文字列 | 列が文字データ型またはテキスト データ型である場合は、文字セットがあるデータベースを示すマスターが返されます。 その他の場合は NULL が返されます。 |
| CHARACTER_SET_SCHEMA | 文字列 | 常に NULL が返されます。 |
| CHARACTER_SET_NAME | 文字列 | この列が文字データ型またはテキスト データ型である場合、文字セットの一意の名前が返されます。 その他の場合は NULL が返されます。 |
| COLLATION_CATALOG | 文字列 | 列が文字データ型またはテキスト データ型である場合は、照合順序が定義されているデータベースを示すマスターが返されます。 その他の場合、この列は NULL になります。 |
| IS_FILESTREAM | 文字列 | 列に FILESTREAM 属性がある場合は YES。 列には FILESTREAM 属性がない場合は NO。 |
| IS_SPARSE | 文字列 | 列がスパース列である場合は YES。 列がスパース列でない場合は NO。 |
| IS_COLUMN_SET | 文字列 | その列が列セット列である場合は YES。 列が列セット列でない場合は NO。 |
ユーザー
| ColumnName | データ型 | 説明 |
|---|---|---|
| uid | Int16 | このデータベースで一意のユーザー ID。 1 はデータベースの所有者です。 |
| user_name | 文字列 | このデータベースで一意のユーザー名またはグループ名。 |
| createdate | DateTime | アカウントが追加された日付。 |
| updatedate | DateTime | アカウントが最後に変更された日付。 |
閲覧数
| ColumnName | データ型 | 説明 |
|---|---|---|
| TABLE_CATALOG | 文字列 | ビューのカタログ。 |
| TABLE_SCHEMA | 文字列 | ビューを含むスキーマ。 |
| TABLE_NAME | 文字列 | ビューの名前。 |
| CHECK_OPTION | 文字列 | WITH CHECK OPTION の型。 元のビューが WITH CHECK OPTION を使用して作成されている場合は CASCADE になります。 その他の場合は NONE が返されます。 |
| IS_UPDATABLE | 文字列 | ビューが更新可能であるかどうかを指定します。 常に NO が返されます。 |
列を表示
| ColumnName | データ型 | 説明 |
|---|---|---|
| カタログを見る | 文字列 | ビューのカタログ。 |
| VIEW_SCHEMA | 文字列 | ビューを含むスキーマ。 |
| VIEW_NAME | 文字列 | ビューの名前。 |
| TABLE_CATALOG | 文字列 | このビューに関連付けられているテーブルのカタログ。 |
| TABLE_SCHEMA | 文字列 | このビューに関連付けられているテーブルを含むスキーマ。 |
| TABLE_NAME | 文字列 | ビューに関連付けられているテーブルの名前。 ベーステーブル |
| COLUMN_NAME | 文字列 | 列名。 |
UserDefinedTypes
| ColumnName | データ型 | 説明 |
|---|---|---|
| assembly_name | 文字列 | アセンブリのファイル名。 |
| udt_name | 文字列 | アセンブリのクラス名。 |
| version_major | オブジェクト | メジャー バージョン番号。 |
| version_minor | オブジェクト | マイナーバージョン番号。 |
| version_build | オブジェクト | ビルド番号。 |
| バージョン改訂 | オブジェクト | 改訂番号。 |
| culture_info | オブジェクト | この UDT に関連付けられているカルチャ情報。 |
| public_key | オブジェクト | このアセンブリで使用される公開キー。 |
| is_fixed_length | ブール値 | 型の長さを max_length と常に同じにするかどうかを指定します。 |
| max_length | Int16 | 型の最大長 (バイト単位)。 |
| 作成日 | DateTime | アセンブリが作成/登録された日付。 |
| Permission_set_desc | 文字列 | アセンブリのアクセス許可セット/セキュリティ レベルのフレンドリ名。 |