Wymiana pól rekordów: używanie funkcji RFX
W tym temacie wyjaśniono, jak używać wywołań funkcji RFX, które tworzą treść DoFieldExchange
przesłonięcia.
Uwaga
Ten temat dotyczy klas pochodnych z CRecordset , w których pobieranie wierszy zbiorczych nie zostało zaimplementowane. Jeśli używasz zbiorczego pobierania wierszy, implementowana jest wymiana pól rekordów zbiorczych (Bulk RFX). Zbiorcze RFX jest podobne do RFX. Aby zrozumieć różnice, zobacz Zestaw rekordów: pobieranie rekordów zbiorczo (ODBC).
Funkcje globalne RFX wymieniają dane między kolumnami w źródle danych i elementami członkowskimi danych pól w zestawie rekordów. Wywołania funkcji RFX są zapisywane w funkcji składowej DoFieldExchange zestawu rekordów. W tym temacie opisano funkcje krótko i przedstawiono typy danych, dla których są dostępne funkcje RFX. Uwaga techniczna 43 opisuje sposób pisania własnych funkcji RFX dla dodatkowych typów danych.
Składnia funkcji RFX
Każda funkcja RFX przyjmuje trzy parametry (a niektóre przyjmują opcjonalny czwarty lub piąty parametr):
Wskaźnik do obiektu CFieldExchange . Wystarczy przekazać
pFX
wskaźnik przekazany doDoFieldExchange
.Nazwa kolumny wyświetlana w źródle danych.
Nazwa odpowiadającego elementu członkowskiego danych pola lub składowej danych parametrów w klasie zestawu rekordów.
(Opcjonalnie) W niektórych funkcjach maksymalna długość przesyłanego ciągu lub tablicy. Ta wartość domyślna to 255 bajtów, ale warto ją zmienić. Maksymalny rozmiar jest oparty na maksymalnym rozmiarze
CString
obiektu — INT_MAX (2147 483 647) bajtów — ale prawdopodobnie napotkasz limity sterowników przed tym rozmiarem.(Opcjonalnie)
RFX_Text
W funkcji czasami używasz piątego parametru, aby określić typ danych kolumny.
Aby uzyskać więcej informacji, zobacz funkcje RFX w obszarze Makra i globalne w dokumentacji biblioteki klas. Aby zapoznać się z przykładem użycia specjalnych parametrów, zobacz Zestaw rekordów: Uzyskiwanie jednostek SUM i innych zagregowanych wyników (ODBC).
Typy danych RFX
Biblioteka klas dostarcza funkcje RFX do przesyłania wielu różnych typów danych między źródłem danych a zestawami rekordów. Poniższa lista zawiera podsumowanie funkcji RFX według typu danych. W przypadkach, gdy musisz napisać własne wywołania funkcji RFX, wybierz z tych funkcji według typu danych.
Function | Typ danych |
---|---|
RFX_Bool |
BOOL |
RFX_Byte |
BAJT |
RFX_Binary |
CByteArray |
RFX_Double |
double |
RFX_Single |
float |
RFX_Int |
int |
RFX_Long |
long |
RFX_LongBinary |
CLongBinary |
RFX_Text |
CString |
RFX_Date |
CTime |
Aby uzyskać więcej informacji, zobacz dokumentację funkcji RFX w obszarze Makra i globalne w dokumentacji biblioteki klas. Aby uzyskać informacje o sposobie mapowania typów danych języka C++ na typy danych SQL, zobacz tabelę ANSI SQL Data Types Mapped to C++ Data Types in SQL: SQL and C++ Data Types (ODBC) (Typy danych ANSI SQL Mapowane na typy danych C++: SQL i C++ Data Types (ODBC).
Zobacz też
Wymiana pól rekordów (RFX)
Wymiana pól rekordów: jak działa RFX
Zestaw rekordów: parametryzacja zestawu rekordów (ODBC)
Zestaw rekordów: dynamiczne powiązanie kolumn danych (ODBC)
Klasa CRecordset
Klasa CFieldExchange