Condividi tramite


CFieldExchange::SetFieldType

È necessaria una chiamata a SetFieldType in override DoFieldExchange o DoBulkFieldExchange della classe recordset.

void SetFieldType( 
   UINT nFieldType  
);

Parametri

  • nFieldType
    Un valore enum FieldType, dichiarato in CFieldExchange, che possono essere uno dei seguenti:

    • CFieldExchange::outputColumn

    • CFieldExchange::inputParam

    • CFieldExchange::param

    • CFieldExchange::outputParam

    • CFieldExchange::inoutParam

Note

Per i membri dati di campo, è necessario chiamare SetFieldType con un parametro CFieldExchange::outputColumn, seguito dalle chiamate a RFX o alle funzioni RFX di massa. Se non si è implementato il recupero di massa di righe, quindi ClassWizard posiziona la richiesta SetFieldType è nella sezione del mapping del campo DoFieldExchange.

Se utilizzo la classe recordset, è necessario chiamare nuovamente SetFieldType, all'esterno di qualsiasi sezione del mapping del campo, seguita dalle chiamate a RFX per i membri dati di parametro. Ogni tipo di membro dati di parametro deve avere la propria chiamata SetFieldType. Nella tabella seguente è possibile distinguere i diversi valori che è possibile passare a SetFieldType per rappresentare i membri dati di parametro della classe:

Valore del parametro di SetFieldType

Tipo di membro dati di parametro

CFieldExchange::inputParam

Parametro di input. Un valore passato alla query o la stored procedure del recordset.

CFieldExchange::param

Equivalente a CFieldExchange::inputParam.

CFieldExchange::outputParam

Parametro di output Un valore restituito della stored procedure del recordset.

CFieldExchange::inoutParam

Il parametro input/output. Un valore passato a e restituiti dalla stored procedure del recordset.

In ogni gruppo di chiamate di funzioni RFX associate ai membri dati di campo o i membri dati di parametro deve essere preceduto da una chiamata a SetFieldType. Il parametro nFieldType di ogni chiamata SetFieldType identifica il tipo dei membri dati rappresentati dalle chiamate alle funzioni RFX che seguono la chiamata SetFieldType.

Per ulteriori informazioni sui parametri di input e di output di gestione, vedere la funzione membro FlushResultSetdi CRecordset. Per ulteriori informazioni su RFX e sulle funzioni RFX di massa, vedere l'argomento Funzioni di trasferimento di campi di Record. Per informazioni correlate sul recupero di massa di righe, vedere l'articolo recordset: Recupero di massa di record (ODBC).

Esempio

Questo esempio mostra diverse chiamate alle funzioni RFX in accompagnamento delle chiamate a SetFieldType. Si noti che SetFieldType viene chiamato mediante il puntatore pFX a un oggetto CFieldExchange.

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

Requisiti

Header: afxdb.h

Vedere anche

Riferimenti

Classe CFieldExchange

Grafico delle gerarchie

CRecordset::DoFieldExchange

CRecordset::DoBulkFieldExchange

CRecordset::FlushResultSet

Altre risorse

Funzioni di trasferimento di campi di record