次の方法で共有


SQLGetDescRec

このトピックでは、SQL Server Native Client に固有の SQLGetDescRec 機能について説明します。

SQLGetDescRec とテーブル値パラメーター

SQLGetDescRec を使用すると、テーブル値パラメーターとテーブル値パラメーター列の属性の値を取得できます。 SQLGetDescRec の RecNumber パラメーターは、SQLBindParameter の ParameterNumber パラメーターに対応します。

テーブル値パラメーター列は、記述子のヘッダー フィールド SQL_SOPT_SS_PARAM_FOCUS に、SQL_DESC_TYPE が SQL_SS_TABLE に設定されているレコードの序数が設定される場合のみ使用できます。 SQL_SOPT_SS_PARAM_FOCUSの詳細については、「 SQLSetStmtAttrを参照してください。

SQLGetDescRec は、次のデータを返します。

パラメーター テーブル値パラメーター テーブル値パラメーター列とその他のパラメーター
名前 ストアド プロシージャ呼び出しの場合は仮パラメーター名。それ以外の場合は長さが 0 の文字列。 テーブル値パラメーター列の名前。
TypePtr SQL_DESC_TYPE。 table-vaued パラメーターの場合、これはSQL_SS_TABLEです。 SQL_DESC_TYPE
SubTypePtr 未定義 SQL_DESC_DATETIME_INTERVAL_CODE (SQL_DATETIME 型または SQL_INTERVAL 型のレコードの場合)。
LengthPtr 0 SQL_DESC_OCTET_LENGTH
PrecisionPtr 0 SQL_DESC_PRECISION
ScalePtr 0 SQL_DESC_SCALE
NullablePtr 1 SQL_DESC_NULLABLE

テーブル値パラメーターの詳細については、「 Table-Valued Parameters (ODBC)」を参照してください。

SQLGetDescRec による機能強化された日付と時刻のサポート

日付型または時刻型に対して返される値を次に示します。

TypePtr SubTypePtr LengthPtr PrecisionPtr ScalePtr
datetime SQL_DATETIME SQL_CODE_TIMESTAMP 4 3 3
smalldatetime(スモールデイトタイム) SQL_DATETIME SQL_CODE_TIMESTAMP 8 0 0
日付 SQL_DATETIME SQL_CODE_DATE 6 0 0
時間 SQL_SS_TIME2 0 10 0..7 0..7
datetime2 SQL_DATETIME SQL_CODE_TIMESTAMP 16 0..7 0..7
datetimeoffset (デイトタイムオフセット) SQL_SS_TIMESTAMPOFFSET (タイムスタンプオフセット) 0 20 0..7 0..7

詳細については、「 Date and Time Improvements (ODBC)」を参照してください。

SQLGetDescRec による大きな CLR UDT のサポート

SQLGetDescRec では、大きな CLR ユーザー定義型 (UDT) がサポートされています。 詳細については、「 Large CLR ユーザー定義型 (ODBC)を参照してください。

こちらもご覧ください

SQLGetDescRec
ODBC API 実装の詳細