SQLProcedureColumns
SQLProcedureColumns は、すべての SQL Server ストアド プロシージャの戻り値の属性を報告する 1 行を返します。
SQLProcedureColumns は、CatalogName パラメータ、SchemaName パラメータ、ProcName パラメータ、または ColumnName パラメータに値が存在するかどうかに関係なく SQL_SUCCESS を返します。SQLFetch では、これらのパラメータに無効な値が使用されると SQL_NO_DATA が返されます。
SQLProcedureColumns は、静的サーバー カーソルで実行できます。更新可能なカーソル (動的カーソルまたはキーセット カーソル) で SQLProcedureColumns を実行しようとすると、カーソルの種類が変更されていることを示す SQL_SUCCESS_WITH_INFO が返されます。
次の表に、結果セットによって返される列、およびそのような列が SQL Server Native Client ODBC ドライバによって udt データ型や xml データ型を処理するためにどのように拡張されているかを示します。
列名 |
説明 |
---|---|
SS_UDT_CATALOG_NAME |
UDT (ユーザー定義型) を含むカタログの名前を返します。 |
SS_UDT_SCHEMA_NAME |
UDT を含むスキーマの名前を返します。 |
SS_UDT_ASSEMBLY_TYPE_NAME |
UDT のアセンブリ修飾名を返します。 |
SS_XML_SCHEMACOLLECTION_CATALOG_NAME |
XML スキーマ コレクション名が定義されているカタログの名前を返します。カタログ名が見つからない場合は、この変数に空文字列が含まれます。 |
SS_XML_SCHEMACOLLECTION_SCHEMA_NAME |
XML スキーマ コレクション名が定義されているスキーマの名前を返します。スキーマ名が見つからない場合は、この変数に空文字列が含まれます。 |
SS_XML_SCHEMACOLLECTION_NAME |
XML スキーマ コレクションの名前を返します。名前が見つからない場合は、この変数に空文字列が含まれます。 |
SQLProcedureColumns とテーブル値パラメータ
SQLProcedureColumns は、CLR ユーザー定義型と同様の方法でテーブル値パラメータを処理します。テーブル値パラメータに対して返される行では、列に次の値が設定されます。
列名 |
説明/値 |
---|---|
DATA_TYPE |
SQL_SS_TABLE |
TYPE_NAME |
テーブル値パラメータのテーブル型の名前。 |
COLUMN_SIZE |
NULL |
BUFFER_LENGTH |
0 |
DECIMAL_DIGITS |
テーブル値パラメータの列数。 |
NUM_PREC_RADIX |
NULL |
NULLABLE |
SQL_NULLABLE |
REMARKS |
NULL |
COLUMN_DEF |
NULL。テーブル型には既定値がない場合があります。 |
SQL_DATA_TYPE |
SQL_SS_TABLE |
SQL_DATEIME_SUB |
NULL |
CHAR_OCTET_LENGTH |
NULL |
IS_NULLABLE |
"YES" |
SS_TYPE_CATALOG_NAME |
テーブル型または CLR ユーザー定義型を含むカタログの名前を返します。 |
SS_TYPE_SCHEMA_NAME |
テーブル型または CLR ユーザー定義型を含むスキーマの名前を返します。 |
SS_TYPE_CATALOG_NAME 列および SS_TYPE_SCHEMA_NAME 列は SQL Server 2008 で導入されました。これらの列はそれぞれ、テーブル値パラメータのカタログとスキーマを返します。テーブル値パラメータに加え CLR ユーザー定義型パラメータに対しても、これらの列が作成されます (CLR ユーザー定義型パラメータの既存のスキーマ列とカタログ列は、この追加機能の影響を受けません。これらの列は、旧バージョンとの互換性を維持するためにも作成されます)。
SS_TYPE_CATALOG_NAME および SS_TYPE_SCHEMA_NAME は、ODBC 仕様に準拠して、以前のバージョンの SQL Server で追加されたドライバ固有のすべての列の前、かつ ODBC 自体によって指定されるすべての列の後に作成されます。
テーブル値パラメータの詳細については、「テーブル値パラメータ (ODBC)」を参照してください。
SQLProcedureColumns による機能強化された日付と時刻のサポート
日付型または時刻型に対して返される値については、「カタログ メタデータ」を参照してください。
一般的な情報については、「日付/時刻の強化 (ODBC)」を参照してください。
SQLProcedureColumns による大きな CLR UDT のサポート
SQLProcedureColumns は、大きな CLR ユーザー定義型 (UDT) をサポートしています。詳細については、「大きな CLR ユーザー定義型 (ODBC)」を参照してください。