CRecordset::DoFieldExchange

Виртуальный void DoFieldExchange ( CFieldExchange * pFX );
бросить ( CDBException );

Параметры

pFX

Указатель на объект CFieldExchange . Рамки уже были созданы этот объект для указания контекста для полевой операции по обмену.

Примечания

Когда выборка строк не реализована, платформа вызывает эта функция-член автоматически обмен данными между элементами полей данных объекта набора записей и соответствующих столбцах текущей записи в источнике данных. DoFieldExchange также связывает ваших членов-параметров данных, если таковые имеются, для параметров-местозаполнителей в строке инструкции SQL для выбора набора записей.

Если выборка строк реализована, платформа вызывает DoBulkFieldExchange. Для реализации групповая выборка строк, необходимо указать параметр CRecordset::useMultiRowFetch dwOptions параметра в функции-члена Open.

Примечание DoFieldExchange доступен только при использовании класса, производного от CRecordset. Если вы создали объект набора записей непосредственно от класса CRecordset, необходимо вызвать функцию-член GetFieldValue для извлечения данных.

Обмен полей данных, называемых обмена полей записей (RFX), работает в обоих направлениях: от поля членов данных объекта набора записей в поля записи в источнике данных и из записи источника данных в объект набора записей.

Единственное действие, которое вы обычно должны принять для реализации функции DoFieldExchange для класса производного набора записей является для создания класса с ClassWizard и укажите имена и типы данных элементов данных полей. Можно также добавить код для ClassWizard пишет для указания членов-параметров данных или для решения любых столбцов динамической привязки. Для получения дополнительных сведений см. статью набор записей: динамически привязки данных столбцы (ODBC) в Руководстве по Visual C++ программист.

При объявлении класса производного набора записей с ClassWizard, мастер записывает переопределения DoFieldExchange для вас, которая напоминает следующий пример:

void CCustSet::DoFieldExchange (CFieldExchange * pFX)
{
 nbsp; //{{AFX_FIELD_MAP(CCustSet)
   pFX - > SetFieldType(CFieldExchange::outputColumn);
   RFX_Text (pFX, «Имя», m_strName);
   RFX_Int (pFX, «Возраст», m_wAge);
   //}}AFX_FIELD_MAP
}

Для получения дополнительных сведений о функции RFX в разделе Запись поля обмена функции.

За дополнительные примеры и подробные сведения о функции DoFieldExchange, обратитесь к статье Обмен полями записей: как RFX работ. Общие сведения о RFX, найти в статье Обмен полей записей. Обе статьи находятся в Руководстве по Visual C++ программист.

Обзор CRecordsetЧлены класса | Иерархическая схема

См. также CRecordset::m_nFields, CRecordset::m_nParams, CRecordset::DoBulkFieldExchange, CRecordset::GetFieldValue, CFieldExchange, запись поля обмена функции

Index