Partager via


RFX_Text

Transfère les données de CString entre les données de membre de champ d'un objet de CRecordset et les colonnes d'un enregistrement sur la source de données ODBC type SQL_LONGVARCHAR, SQL_CHAR, SQL_VARCHAR, SQL_DECIMAL, ou SQL_NUMERIC.

void RFX_Text( 
   CFieldExchange* pFX, 
   const char* szName, 
   CString& value, 
   int nMaxLength = 255, 
   int nColumnType = SQL_VARCHAR, 
   short nScale = 0  
);

Paramètres

  • pFX
    Un pointeur vers un objet d'une classe CFieldExchange. Cet objet contient des informations pour définir le contexte de chaque appel de la fonction. Pour plus d'informations sur les opérations qu'un objet de CFieldExchange peut spécifier, consultez l'article Échange de champs d'enregistrement : Comment fonctionne le RFX.

  • szName
    Nom d'une colonne de données.

  • correspondante
    La valeur signalée dans le membre de données indiqué - la valeur à transférer. Pour un transfert depuis un ensemble enregistré vers une source de données, la valeur, de type CString, est prise du membre de données spécifié. Pour un transfert de la source de données à l'ensemble d'enregistrements, la valeur est stockée dans le membre de données spécifié.

  • nMaxLength
    La longueur maximale autorisée de la chaîne ou du tableau en cours de transfert. La valeur par défaut de nMaxLength est 255. Les valeurs autorisées sont comprises entre 1 et INT_MAX. L'infrastructure alloue la quantité d'espace pour les données. Pour de meilleures performances, passez une valeur suffisamment élevée pour assumer le plus grand élément de données attendu.

  • nColumnType
    Utilisé principalement pour les paramètres. Entier qui indique le type de données du paramètre. Le type est un type de données ODBC du formulaire SQL_XXX.

  • nScale
    Spécifie l'échelle des valeurs de type ODBC SQL_DECIMAL ou SQL_NUMERIC. nScale est utile seulement en définissant les valeurs de paramètre. Pour plus d'informations, consultez la rubrique « précision, échelle, longueur, et la taille d'affichage » dans l'annexe D ODBC le guide de référence du programmeur.

Notes

Les données de la source de données de tous ces types sont mappées vers et depuis CString dans l'ensemble d'enregistrements.

Exemple

Cet exemple montre plusieurs appels à RFX_Text. Notez aussi les deux appels à CFieldExchange::SetFieldType. Pour les paramètres vous devez écrire l'appel à SetFieldType et son appel de RFX. L'appel de colonne de sortie et les appels de RFX associés sont normalement écrits par un Assistant Code.

void CCustomer::DoFieldExchange(CFieldExchange* pFX)
{
   pFX->SetFieldType(CFieldExchange::outputColumn);
   // Macros such as RFX_Text() and RFX_Int() are dependent on the 
   // type of the member variable, not the type of the field in the database. 
   // ODBC will try to automatically convert the column value to the requested type
   RFX_Long(pFX, _T("[CustomerID]"), m_CustomerID);
   RFX_Text(pFX, _T("[ContactFirstName]"), m_ContactFirstName);
   RFX_Text(pFX, _T("[PostalCode]"), m_PostalCode);
   RFX_Text(pFX, _T("[L_Name]"), m_L_Name);
   RFX_Long(pFX, _T("[BillingID]"), m_BillingID);

   pFX->SetFieldType(CFieldExchange::inputParam);
   RFX_Text(pFX, _T("Param"), m_strParam);
}

Configuration requise

En-tête: afxdb.h

Voir aussi

Référence

RFX_Bool

RFX_Long

RFX_Int

RFX_Single

RFX_Double

RFX_Date

RFX_Byte

RFX_Binary

RFX_LongBinary

CFieldExchange::SetFieldType

Concepts

macro MFC et Globals