RFX_Text

调用 CRecordset 对象的字段数据的记录之间的成员和列的 CString 数据在 ODBC 类型 SQL_LONGVARCHARSQL_CHARSQL_VARCHARSQL_DECIMALSQL_NUMERIC数据源的。

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

参数

  • pFX
    对类 CFieldExchange对象的指针。 此对象包含信息定义每个的上下文调用函数。 有关 CFieldExchange 对象可以指定操作的更多信息,请参见中的文章 记录字段交换:RFX 的工作机制

  • szName
    数据列的名称。


  • 在指定的数据成员中存储的值 —值将调用。 对于调用从记录集到数据源,值,的类型 CString,从指定的数据成员中采用。 对于调用从数据源传输到记录集,该值在指定的数据成员中存储。

  • nMaxLength
    调用的字符串或数组的最大允许的长度。 nMaxLength 的默认值为 255。 合法的值为 1 到 INT_MAX。 框架分配此空间的数据。 为了获得最佳性能,应通过足够大值是否适合您期望的最大数据项。

  • nColumnType
    使用主要为参数。 指示参数的数据类型整数。 该类型是窗体 SQL_XXX的 ODBC 数据类型。

  • nScale
    用于 ODBC 的类型指定小数位数 SQL_DECIMALSQL_NUMERIC的值。 ,当设置参数值时,nScale 才有用。 有关更多信息,请参见 ODBC SDK 程序员参考 中的附录 D 中 “精度、缩放、长度和显示范围”主题。

备注

在所有的数据源的数据这些类型之间来回在记录集中 CString 映射。

示例

此示例演示多次调用。 RFX_Text。 请注意两个团队都调用 CFieldExchange::SetFieldType。 对于参数必须编写调用 SetFieldType 及其 RFX 调用。 输出列调用,并且其关联的 RFX 调用代码向导通常编写。

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);
}

要求

Header: afxdb.h

请参见

参考

RFX_Bool

RFX_Long

RFX_Int

RFX_Single

RFX_Double

RFX_Date

RFX_Byte

RFX_Binary

RFX_LongBinary

CFieldExchange::SetFieldType

概念

MFC宏和Globals