Trasferimento di campi di record: utilizzo delle funzioni RFX
Questo argomento illustra come usare le chiamate di funzione RFX che costituiscono il corpo dell'override DoFieldExchange
.
Nota
Questo argomento si applica alle classi derivate da CRecordset in cui il recupero delle righe bulk non è stato implementato. Se si usa il recupero di massa di righe, viene implementato il trasferimento di massa di campi di record (RFX di massa). RFX di massa è simile a RFX. Per comprendere le differenze, vedere Recordset: recupero di record in blocco (ODBC).To understand the differences, see Recordset: Fetching Records in Bulk (ODBC).
Le funzioni globali RFX scambiano dati tra colonne nei membri dati dell'origine dati e dei campi nel recordset. Le chiamate di funzione RFX sono scritte nella funzione membro DoFieldExchange del recordset. In questo argomento vengono descritte brevemente le funzioni e vengono illustrati i tipi di dati per i quali sono disponibili funzioni RFX. Nota tecnica 43 descrive come scrivere funzioni RFX personalizzate per tipi di dati aggiuntivi.
Sintassi della funzione RFX
Ogni funzione RFX accetta tre parametri (e alcuni accettano un quarto o quinto parametro facoltativo):
Puntatore a un oggetto CFieldExchange . È sufficiente passare il
pFX
puntatore passato aDoFieldExchange
.Nome della colonna visualizzata nell'origine dati.
Nome del membro dati del campo o del membro dati del parametro corrispondente nella classe recordset.
(Facoltativo) In alcune funzioni la lunghezza massima della stringa o della matrice da trasferire. Il valore predefinito è 255 byte, ma potrebbe essere necessario modificarlo. La dimensione massima si basa sulle dimensioni massime di un
CString
oggetto , INT_MAX (2.147.483.647) byte, ma probabilmente si riscontrano limiti del driver prima di tale dimensione.(Facoltativo)
RFX_Text
Nella funzione a volte si usa un quinto parametro per specificare il tipo di dati di una colonna.
Per altre informazioni, vedere le funzioni RFX in Macro e Globals nella Guida di riferimento alla libreria di classi. Per un esempio di quando è possibile usare in modo speciale i parametri, vedere Recordset: Recupero di sum e altri risultati aggregati (ODBC).
Tipi di dati RFX
La libreria di classi fornisce funzioni RFX per il trasferimento di molti tipi di dati diversi tra l'origine dati e i recordset. L'elenco seguente riepiloga le funzioni RFX in base al tipo di dati. Nei casi in cui è necessario scrivere chiamate di funzione RFX personalizzate, selezionare da queste funzioni per tipo di dati.
Funzione | Tipo di dati |
---|---|
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 |
Per altre informazioni, vedere la documentazione relativa alla funzione RFX in Macro e globali nella guida di riferimento alla libreria di classi. Per informazioni sul mapping dei tipi di dati C++ ai tipi di dati SQL, vedere la tabella Tipi di dati SQL ANSI mappati ai tipi di dati C++ in SQL: TIPI di dati SQL e C++ (ODBC).
Vedi anche
Trasferimento di campi di record (RFX)
Trasferimento di campi di record: funzionamento di RFX
Recordset: applicazione di parametri a un recordset (ODBC)
Recordset: associazione dinamica di colonne di dati (ODBC)
Classe CRecordset
Classe CFieldExchange