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 會傳回以下資料:
參數 |
資料表值參數 |
資料表值參數資料行和其他參數 |
---|---|---|
Name |
預存程序呼叫的型式參數名稱,否則為 0 長度字串。 |
資料表值參數資料行名稱。 |
TypePtr |
SQL_DESC_TYPE。如果是資料表值參數,這就是 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 |
如需有關資料表值參數的詳細資訊,請參閱<資料表值參數 (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 |
date |
SQL_DATETIME |
SQL_CODE_DATE |
6 |
0 |
0 |
time |
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 |
如需詳細資訊,請參閱<ODBC 日期/時間的改善 (ODBC)>。
SQLGetDescRec 對於大型 CLR UDT 的支援
SQLGetDescRec 支援大型 CLR 使用者定義型別 (UDT)。如需詳細資訊,請參閱<大型 CLR 使用者定義型別 (ODBC)>。