Share via


DFX_Binary

Transfère des tableaux d'octets uniques entre les membres de données de champ d'un objet CDaoRecordset et les colonnes d'un enregistrement sur la source de données.

void AFXAPI DFX_Binary( 
   CDaoFieldExchange* pFX, 
   LPCTSTR szName, 
   CByteArray& value, 
   int nPreAllocSize = AFX_DAO_BINARY_DEFAULT_SIZE, 
   DWORD dwBindOptions = 0  
);

Paramètres

  • pFX
    Un pointeur vers un objet de la classe CDaoFieldExchange. Cet objet contient des informations pour définir le contexte de chaque appel de la fonction.

  • szName
    Le nom d'une colonne de données.

  • correspondante
    La valeur stockée dans le membre de données indiqué — la valeur à transférer. Pour un transfert depuis un recordset vers la source de données, la valeur, de type CByteArray, est prise à partir du membre de données spécifié. Pour un transfert de la source de données au recordset, la valeur est stockée dans le membre de données spécifié.

  • nPreAllocSize
    L'infrastructure pré-alloue cette quantité de mémoire. Si vos données sont plus grandes, l'infrastructure allouera l'espace nécessaire. Pour de meilleures performances, définissez la taille à une valeur suffisamment élevée pour empêcher les reallocations. La taille par défaut est définie dans le fichier d'AFXDAO.H comme AFX_DAO_BINARY_DEFAULT_SIZE.

  • dwBindOptions
    Une option qui vous permet de tirer parti du double mécanisme tampon de MFC pour détecter les champs du recordset qui ont changé. La valeur par défaut, AFX_DAO_DISABLE_FIELD_CACHE, n'utilise pas le mécanisme de double tampon, et vous devez appeler SetFieldDirty et SetFieldNull vous-même. L'autre valeur possible, AFX_DAO_ENABLE_FIELD_CACHE, le mécanisme de double tampon utilise, et vous ne devez pas exécuter un travail supplémentaire pour marquer les champs modifiés ou NULL. Pour des raisons de performances et de mémoire, évitez cette valeur à moins que les données binaires sont relativement petites.

    Notes

    Vous pouvez contrôler si les données sont en double tampon pour tous les champs par défaut en attribuant CDaoRecordset::m_bCheckCacheForDirtyFields.

Notes

Les données sont connectées entre le type DAO_BYTES dans DAO et le type CByteArray dans le recordset.

Exemple

Consultez DFX_Text.

Configuration requise

En-tête : afxdao.h

Voir aussi

Référence

DFX_Text

DFX_Bool

DFX_Currency

DFX_Long

DFX_Short

DFX_Single

DFX_Double

DFX_DateTime

DFX_Byte

DFX_LongBinary

CDaoFieldExchange::SetFieldType

Concepts

macro MFC et Globals