CFieldExchange::SetFieldType
レコードセットのクラスの DoFieldExchange または DoBulkFieldExchange のオーバーライドで SetFieldType の呼び出しが必要です。
void SetFieldType(
UINT nFieldType
);
パラメーター
nFieldType
次のいずれかである CFieldExchangeで宣言された enum FieldTypeの値:CFieldExchange::outputColumn
CFieldExchange::inputParam
CFieldExchange::param
CFieldExchange::outputParam
CFieldExchange::inoutParam
解説
フィールド データ メンバーごとに RFX、または Bulk RFX 関数の呼び出しに続く CFieldExchange::outputColumnのパラメーターの SetFieldType を呼び出す必要があります。 バルク行フェッチを実装していない場合は DoFieldExchangeClassWizard のフィールド マップのセクションに、の SetFieldType のこの呼び出しを設定します。
パラメーターを利用したレコードセット クラスので、SetFieldType を表す場合、すべてのパラメーター データ メンバーごとに RFX 関数呼び出しに続くすべてのフィールド マップのセクションの外側で再度呼び出す必要があります。 パラメーター データ メンバーの種類に SetFieldType の独自の呼び出しが必要です。 次の表は、クラスのパラメーター データ メンバーを表すために SetFieldType に渡すことができる値を区別するものです:
SetFieldType のパラメーター値 |
パラメーター データ メンバーの型 |
---|---|
CFieldExchange::inputParam |
入力パラメーター。 レコードセットのクエリまたはストアド プロシージャに渡す値。 |
CFieldExchange::param |
CFieldExchange::inputParamと同じです。 |
CFieldExchange::outputParam |
出力パラメーター。 レコードセットのストアド プロシージャの戻り値。 |
CFieldExchange::inoutParam |
入出力パラメーター。 渡され、レコードセットのストアド プロシージャから返される値。 |
一般に、フィールド データ メンバー、またはパラメーター データ メンバーに関連付けられている SetFieldTypeの呼び出しに RFX 関数呼び出しの各グループは指定する必要があります。 SetFieldType の各呼び出しの nFieldType のパラメーターは SetFieldType の呼び出しの直後に RFX 関数によって表されるデータ メンバーの種類を識別します。
出力および入出力パラメーターの操作方法の詳細については、CRecordset のメンバー関数 FlushResultSetを参照してください。 RFX や Bulk RFX 関数に関する詳細については、" " フィールド エクスチェンジ関数を記録します。を参照してください。 バルク行フェッチについての関連情報については、" " レコードセット: フェッチ サイズのレコードを (ODBC)を参照してください。
使用例
この例では SetFieldTypeの呼び出しに関連することで RFX 関数に複数の呼び出しを示します。 SetFieldType が CFieldExchange のオブジェクトへの pFX のポインターを介して呼び出されることに注意してください。
void CSections::DoFieldExchange(CFieldExchange* pFX)
{
pFX->SetFieldType(CFieldExchange::outputColumn);
RFX_Text(pFX, _T("[CourseID]"), m_CourseID);
RFX_Text(pFX, _T("[InstructorID]"), m_InstructorID);
RFX_Text(pFX, _T("[RoomNo]"), m_RoomNo);
RFX_Text(pFX, _T("[Schedule]"), m_Schedule);
// output parameter
pFX->SetFieldType(CFieldExchange::outputParam);
RFX_Long(pFX, _T("Instructor_Count"), m_nCountParam);
// input parameter
pFX->SetFieldType(CFieldExchange::inputParam);
RFX_Text(pFX, _T("Department_Name"), m_strNameParam);
}
必要条件
Header: afxdb.h
参照
関連項目
CRecordset::DoBulkFieldExchange