預設 C 資料類型
如果應用程式在 SQLBindCol、SQLGetData 或 SQLBindParameter 中指定SQL_C_DEFAULT,驅動程式會假設輸出或輸入緩衝區的 C 數據類型對應至緩衝區所系結之數據行或參數的 SQL 數據類型。
重要
互通的應用程式不應該使用SQL_C_DEFAULT。 相反地,它們應該一律指定所使用的緩衝區 C 類型。 這是因為驅動程式無法一律正確判斷預設 C 類型,原因如下:
如果 DBMS 升級資料行或參數的 SQL 資料類型,驅動程式就無法判斷數據行或參數的原始 SQL 資料類型。 因此,它無法判斷對應的預設 C 數據類型。
如果驅動程式無法判斷特定數據行或參數是否已簽署,就像 DBMS 處理這個值時的情況一樣,驅動程式無法判斷對應的預設 C 數據類型是否應該簽署或取消簽署。
因為SQL_C_DEFAULT只是為了方便程序設計,所以當應用程式指定實際的 C 數據類型時,不會遺失任何功能。
下表顯示每個 SQL 資料類型的預設 C 數據類型,會包含在 本附錄稍後的將數據從 SQL 轉換成 C 資料類型中。