次の方法で共有


SQL から C へ: 日付

日付 ODBC SQL データ型の識別子は次のとおりです。

SQL_TYPE_DATE

次の表に、SQL データの変換先となる ODBC C データ型を示します。 表の列と用語の説明については、「SQL から C データ型へのデータの変換」を参照してください

C 型識別子 テスト *TargetValuePtr *StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR BufferLength> 文字のバイト長

11 <= BufferLength<= 文字バイト長

BufferLength< 11
データ​​

切り捨てられたデータ

Undefined
10

データの長さ (バイト単位)

Undefined
該当なし

01004

22003
SQL_C_WCHAR BufferLength> 文字の長さ

11 <= BufferLength<= 文字の長さ

BufferLength< 11
データ​​

切り捨てられたデータ

Undefined
10

文字単位のデータの長さ

Undefined
該当なし

01004

22003
SQL_C_BINARY データ <のバイト長 = BufferLength

データ >BufferLength のバイト長
データ​​

Undefined
データの長さ (バイト単位)

Undefined
該当なし

22003
SQL_C_TYPE_DATE None[a] データ​​ 6[c] 該当なし
SQL_C_TYPE_TIMESTAMP None[a] Data[b] 16[c] 該当なし

[a] この変換では BufferLength の値は無視されます。 ドライバーは、*TargetValuePtr のサイズが C データ型のサイズであることを前提としています。

[b] タイムスタンプ構造体の時刻フィールドは 0 に設定されます。

[c] これは、対応する C データ型のサイズです。

日付 SQL データを文字 C データに変換すると、結果の文字列は "yyyy-mm-dd" 形式になります。 この形式は、Windows の国/地域の設定の影響を受けません。