SQL 至 C:日期

ODBC SQL 資料型別日期的識別碼為:

SQL_TYPE_DATE

下表顯示驅動程式可將日期 SQL 資料轉換成的 ODBC C 資料型別。 如需數據表中數據行和詞彙的說明,請參閱 將數據從SQL轉換成 C 數據類型。

備註

字元轉換時, BufferLength 必須包含空終止符的空間。 一個日期字串長度為 10 個字元(yyyy-mm-dd),因此 BufferLength 必須至少是 11 位元組以避免截斷。

C 類型識別碼 Test * 目標值Ptr * StrLen_or_IndPtr SQLSTATE
SQL_C_CHAR BufferLength> 字元位元組長度

11 <= 緩衝區長度< = 字元組長度

緩衝長度< 11
資料

截斷資料

未定義
10

以位元組為單位的數據長度

未定義
n/a

01004

22003
SQL_C_WCHAR BufferLength> 字元長度

11 <= 緩衝長度< = 字元長度

緩衝長度< 11
資料

截斷資料

未定義
10

以字元為單位的數據長度

未定義
n/a

01004

22003
SQL_C_BINARY 位元組長度的數據 <= BufferLength

數據 >BufferLength 的位元組長度
資料

未定義
以位元組為單位的數據長度

未定義
n/a

22003
SQL_C_TYPE_DATE 無1 資料 63 n/a
SQL_C_TYPE_TIMESTAMP 無1 資料2 163 n/a

1BufferLength 的值在此轉換中被忽略。 驅動程序假設 *TargetValuePtr 的大小是 C 數據類型的大小。

2 驅動程式將時間戳結構的時間場設為零。

3 這是對應 C 資料型態的大小。

當驅動程式將日期 SQL 資料轉換成字元 C 資料時,產生的字串格式為「yyyy-mm-dd」。 這個格式不受 Windows 國家/地區設定影響。