Datensatzfeldaustausch: Verwenden der RFX-Funktionen
In diesem Thema wird erläutert, wie Sie die RFX-Funktionsaufrufe verwenden, die den Textkörper Ihrer DoFieldExchange
Außerkraftsetzung bilden.
Hinweis
Dieses Thema bezieht sich auf Klassen, die von CRecordset abgeleitet wurden, in denen massenweises Abrufen von Zeilen nicht implementiert wurde. Wenn Sie Massenabrufen von Zeilen verwenden, wird der Massen-Datensatzfeldaustausch (Bulk-RFX) implementiert. Bulk-RFX ist RFX sehr ähnlich. Informationen zu den Unterschieden finden Sie unter Recordset: Abrufen von Datensätzen in Massen (ODBC).
Die globalen RFX-Funktionen tauschen Daten zwischen Spalten der Datenquellen- und Felddatenmber in Ihrem Recordset aus. Sie schreiben die RFX-Funktionsaufrufe in die DoFieldExchange-Memberfunktion Ihres Recordsets. In diesem Thema werden die Funktionen kurz beschrieben und die Datentypen gezeigt, für die RFX-Funktionen verfügbar sind. Technisches Hinweis 43 beschreibt, wie Sie Eigene RFX-Funktionen für zusätzliche Datentypen schreiben.
Syntax der RFX-Funktion
Jede RFX-Funktion akzeptiert drei Parameter (und einige nehmen einen optionalen vierten oder fünften Parameter):
Ein Zeiger auf ein CFieldExchange-Objekt . Sie übergeben einfach den
pFX
Zeiger, der anDoFieldExchange
.Der Name der Spalte, wie sie in der Datenquelle angezeigt wird.
Der Name des entsprechenden Felddatenmememm oder des Parameterdatenmemm in der Recordsetklasse.
(Optional) In einigen Funktionen wird die maximale Länge der übertragenen Zeichenfolge oder des Arrays verwendet. Dies ist standardmäßig auf 255 Byte festgelegt, sie kann jedoch geändert werden. Die maximale Größe basiert auf der maximalen Größe eines
CString
Objekts – INT_MAX (2.147.483.647) Byte – sie werden jedoch wahrscheinlich auf Treiberbeschränkungen vor dieser Größe stoßen.(Optional) In der
RFX_Text
Funktion verwenden Sie manchmal einen fünften Parameter, um den Datentyp einer Spalte anzugeben.
Weitere Informationen finden Sie in den RFX-Funktionen unter Makros und Globalen in der Klassenbibliotheksreferenz. Ein Beispiel für eine spezielle Verwendung der Parameter finden Sie unter Recordset: Abrufen von SUMs und anderen Aggregatergebnissen (ODBC).For an example of when you might make special use of the parameters, see Recordset: Obtaining SUMs and Other Aggregate Results (ODBC).
RFX-Datentypen
Die Klassenbibliothek stellt RFX-Funktionen bereit, um viele verschiedene Datentypen zwischen der Datenquelle und ihren Recordsets zu übertragen. In der folgenden Liste sind die RFX-Funktionen nach Datentyp zusammengefasst. In Fällen, in denen Sie Eigene RFX-Funktionsaufrufe schreiben müssen, wählen Sie aus diesen Funktionen nach Datentyp aus.
Funktion | Datentyp |
---|---|
RFX_Bool |
BOOL |
RFX_Byte |
BYTE |
RFX_Binary |
CByteArray |
RFX_Double |
double |
RFX_Single |
float |
RFX_Int |
int |
RFX_Long |
long |
RFX_LongBinary |
CLongBinary |
RFX_Text |
CString |
RFX_Date |
CTime |
Weitere Informationen finden Sie in der RFX-Funktionsdokumentation unter Makros und Globalen in der Klassenbibliotheksreferenz. Informationen zur Zuordnung von C++-Datentypen zu SQL-Datentypen finden Sie in der Tabelle ANSI SQL-Datentypen, die C++-Datentypen in SQL zugeordnet sind: SQL- und C++-Datentypen (ODBC).
Siehe auch
Datensatzfeldaustausch (RFX)
Datensatzfeldaustausch: Funktionsweise von RFX
Recordset: Parametrisieren eines Recordsets (ODBC)
Recordset: Dynamisches Binden von Datenspalten (ODBC)
CRecordset-Klasse
CFieldExchange-Klasse