SQLGetDescRec
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)
本主題討論 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 會傳回下列數據:
參數 | 資料表值參數 | 數據表值參數數據行和其他參數 |
---|---|---|
名稱 | 預存過程調用的正式參數名稱;否則為 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)。
大型 CLR UDT 的 SQLGetDescRec 支援
SQLGetDescRec 支援大型 CLR 使用者定義型別 (UDT)。 如需詳細資訊,請參閱 大型CLR使用者定義型別 (ODBC)。