RFX_Text
Os dados de CString das transferências entre os membros de dados do campo de um objeto de CRecordset e colunas de um registro na fonte de dados ODBC em 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
);
Parâmetros
pFX
Um ponteiro para um objeto da classe CFieldExchange. Esse objeto contém informações para definir o contexto para cada chamada da função. Para obter mais informações sobre as operações que um objeto de CFieldExchange pode especificar, consulte o artigo Exchange campo do registro: Como funciona RFX.szName
O nome de uma coluna de dados.valor
O valor armazenado no membro de dados indicado — o valor a ser transferido. Para uma transferência do conjunto de registros com a fonte de dados, o valor, do tipo CString, é obtido do membro de dados especificado. Para uma transferência da fonte de dados ao conjunto de registros, o valor é armazenado no membro de dados especificado.nMaxLength
O comprimento máximo permitido de cadeia de caracteres ou matriz que estão sendo transferidas. O valor padrão para nMaxLength é 255. Os valores válidos são de 1 a INT_MAX. A estrutura atribui essa quantidade de espaço para os dados. Para melhor desempenho, passe um valor grande o suficiente para acomodar o item de dados maior que o esperado.nColumnType
Usado principalmente para parâmetros. Um inteiro que indica o tipo de dados do parâmetro. O tipo é um tipo de dados ODBC do formulário SQL_XXX.nScale
Especifica a escala para valores de tipo SQL_DECIMAL ou SQL_NUMERICODBC. nScale só é útil ao definir valores de parâmetro. Para obter mais informações, consulte o tópico “precisão, escala, comprimento, e tamanho da exibição” no apêndice D de referência do programador de ODBC SDK.
Comentários
Os dados na fonte de dados de todos esses tipos são mapeados para e de CString no conjunto de registros.
Exemplo
Este exemplo mostra várias chamadas a RFX_Text. Aviso também as duas chamadas a CFieldExchange::SetFieldType. Para parâmetros você deve escrever a chamada a SetFieldType e à sua chamada de RFX. A chamada de coluna de saída e seus chamadas de RFX associados são gravados normalmente por um assistente do código.
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);
}
Requisitos
Header: afxdb.h