RFX_Text
CRecordset オブジェクトのフィールド データ メンバーと、ODBC 型 SQL_LONGVARCHAR、SQL_CHAR、SQL_VARCHAR、SQL_DECIMAL、SQL_NUMERIC のデータ ソース レコード列の間で CString データを転送します。
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_DECIMAL または SQL_NUMERIC の値としてスケールを指定します。 nScale は、パラメーターの値を設定するときだけ有効です。 詳細については、『ODBC SDK Programmer's Reference』の「Appendix D: Data Types」の「Column Size, Decimal Digits, Transfer Octet Length, and Display Size」を参照してください。
解説
この型のデータ ソース内のデータは、レコードセットの CString 型との間に割り当てられます。
使用例
例ではいくつかの RFX_Text を呼び出しています。 また、2 つの 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);
}
必要条件
**ヘッダー:**afxdb.h