共用方式為


數據行大小、十進位數、傳輸八位長度和顯示大小 - ODBC

數據類型的特點是其數據行(或參數)大小、小數位數、長度和顯示大小。 下列 ODBC 函式會針對 SQL 語句中的參數或數據來源上的 SQL 數據類型,傳回這些屬性。 每個 ODBC 函式都會傳回一組不同的這些屬性,如下所示:

  • SQLDescribeCol 會傳回其描述之數據行的數據行大小和十進位數。

  • SQLDescribeParam 會傳回所描述參數的參數大小和十進位數。 SQLBindParameter 會設定 SQL 語句中參數的參數大小和十進位數。

  • 目錄函式 SQLColumns、SQLProcedureColumnsSQLGetTypeInfo 會傳回數據表、結果集或程序參數和數據源中數據類型目錄屬性的屬性。 SQLColumns 會傳回指定資料表中數據行的數據行大小、十進位數和長度(例如基表、檢視表或系統數據表)。 SQLProcedureColumns 會傳回程式中數據行的數據行大小、十進位數和長度。 SQLGetTypeInfo 會傳回數據源上 SQL 數據類型的最大數據行大小和最小和最大十進位數。

這些函數針對數據行或參數大小所傳回的值會對應至 ODBC 2 中所定義的「有效位數」。x. 不過,這些值不一定對應至SQL_DESC_PRECISION或任何其他描述元欄位中所傳回的值。 十進位數也是如此,其對應至 ODBC 2 中所定義的「小數位數」。x. 它不一定對應至SQL_DESC_SCALE或任何其他描述元欄位中傳回的值,但會根據數據類型而來自不同的描述元欄位。 如需詳細資訊,請參閱 數據行大小十進位數

同樣地,傳輸八位長度的值不是來自SQL_DESC_LENGTH。 它們來自所有字元和二進位類型的描述元欄位SQL_DESC_OCTET_LENGTH。 沒有描述項欄位會保存其他類型的這項資訊。

所有數據類型的顯示大小值都會對應至單一描述元欄位中的值,SQL_DESC_DISPLAY_SIZE。

描述項欄位描述結果集的特性。 描述項欄位不包含語句執行前數據的有效值。 另一方面,SQLColumns、SQLProcedureColumns 和 SQLGetTypeInfo傳回之數據行大小、小數位數和顯示大小的值會傳回資料庫物件的特性,例如存在於數據源目錄中的數據表數據行和數據類型。 同樣地,在結果集中, SQLColAttribute 會傳回數據源數據行的數據行大小、十進位數和傳輸八位長度;這些值不一定與SQL_DESC_PRECISION、SQL_DESC_SCALE和SQL_DESC_OCTET_LENGTH描述元字段的值相同。

如需這些描述元欄位的詳細資訊,請參閱 SQLSetDescField

相關主題: