Freigeben über


SQLSetDescRec

In diesem Thema werden sqlSetDescRec-Funktionen behandelt, die für SQL Server Native Client spezifisch sind.

SQLSetDescRec- und Table-Valued-Parameter

SQLSetDescRec kann zum Festlegen von Deskriptorfeldern für Tabellenwertparameter und Tabellenwertparameterspalten verwendet werden. Tabellenwertparameter-Spalten sind nur verfügbar, wenn das Deskriptorheaderfeld SQL_SOPT_SS_PARAM_FOCUS auf die Ordnungszahl eines Datensatzes festgelegt ist, für den SQL_DESC_TYPE auf SQL_SS_TABLE eingestellt ist. Weitere Informationen zu SQL_SOPT_SS_PARAM_FOCUS finden Sie unter SQLSetStmtAttr.

In der folgenden Tabelle wird die Zuordnung zwischen Parametern und Deskriptorfeldern beschrieben.

Parameter Verwandtes Attribut für Parametertypen ohne Tabellenwert, einschließlich Tabellenwertparameterspalten Verwandtes Attribut für Tabellenwertparameter
Typ SQL_DESC_TYPE SQL_SS_TABLE
Untertyp Wird ignoriert. Legen Sie dies für Datensätze vom Typ SQL_DATETIME oder SQL_INTERVAL auf SQL_DESC_DATETIME_INTERVAL_CODE fest.
Länge SQL_DESC_OCTET_LENGTH Die Länge des Tabellenwert-Parametertypnamens. Dies kann SQL_NTS werden, wenn der Typname null beendet ist, oder null, wenn der Parametertypname mit Tabellenwert nicht erforderlich ist.
Präzision SQL_DESC_PRECISION SQL_DESC_ARRAY_SIZE
Maßstab SQL_DESC_SCALE Unbenutzt. Dieser Parameter sollte null sein.
DataPtr- SQL_DESC_DATA_PTR in APD SQL_CA_SS_TYPE_NAME

Dieser Parameter ist optional für Gespeicherte Prozeduraufrufe, und NULL kann angegeben werden, wenn er nicht erforderlich ist. Dieser Parameter muss für SQL-Anweisungen angegeben werden, die keine Prozeduraufrufe sind.

DataPtr dient auch als eindeutiger Wert, den die Anwendung verwenden kann, um diesen Tabellenwertparameter zu identifizieren, wenn die Variable Zeilenbindung verwendet wird.
StringLengthPtr SQL_DESC_OCTET_LENGTH_PTR SQL_DESC_OCTET_LENGTH_PTR

Bei einem Tabellenwertparameter ist dies die Anzahl der zeilen, die übertragen oder SQL_DATA_AT_EXEC. Dies ist ein Zeiger auf einen Wert, der die Anzahl der Zeilen enthält, die mit SQLExecDirect übertragen werden sollen.
IndicatorPtr- SQL_DESC_INDICATOR_PTR SQL_DESC_INDICATOR_PTR

Weitere Informationen zu Tabellenwertparametern finden Sie unter "Table-Valued Parameters (ODBC)".

SQLSetDescRec-Unterstützung für erweiterte Datums- und Uhrzeitfeatures

Die für Datums-/Uhrzeittypen zulässigen Werte sind wie folgt:

Typ Untertyp Länge Präzision Maßstab
Datum/Uhrzeit SQL_DATETIME SQL_CODE_TIMESTAMP 4 3 3
smalldatetime SQL_SQL_DATETIME SQL_CODE_TIMESTAMP 8 0 0
Datum SQL_DATETIME SQL_CODE_DATE 6 0 0
Zeit 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

Weitere Informationen finden Sie unter "Datums- und Uhrzeitverbesserungen (ODBC)".

SQLSetDescRec-Unterstützung für große CLR-UDTs

SQLSetDescRec unterstützt große benutzerdefinierte CLR-Typen (UDTs). Weitere Informationen finden Sie unter "Large CLR User-Defined Types (ODBC)".

Siehe auch

SQLSetDescRec
ODBC-API-Implementierungsdetails