Condividi tramite


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 a DoFieldExchange.

  • 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