次の方法で共有


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 関数に複数の呼び出しを示します。  SetFieldTypeCFieldExchange のオブジェクトへの 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

参照

CFieldExchange クラス
階層図
CRecordset::DoFieldExchange
CRecordset::DoBulkFieldExchange
CRecordset::FlushResultSet
レコード フィールド エクスチェンジ (RFX) 関数