记录字段交换:使用 RFX
本主题说明为使用 RFX 您和框架分别要执行哪些操作。
提示
本主题适用于从 CRecordset 派生的类,这些类中尚未实现批量取行。 如果使用的是批量取行,则实现批量记录字段交换 (Bulk RFX)。 Bulk RFX 与 RFX 类似。 若要了解其中的差别,请参见记录集:批量获取记录 (ODBC)。
以下主题包含相关信息:
记录字段交换:处理向导代码介绍 RFX 的主要组件,并解释“MFC 应用程序向导”和“添加类”(详见添加 MFC ODBC 使用者中的介绍)为支持 RFX 而编写的代码,同时还介绍了如何修改这些向导代码。
记录字段交换:使用 RFX 函数解释如何在 DoFieldExchange 重写中编写对 RFX 函数的调用。
下表分别列出您的职责和框架为您执行的操作。
使用 RFX:您和框架
您 |
框架 |
---|---|
用向导声明记录集类。 指定字段数据成员的名称和数据类型。 |
向导派生一个 CRecordset 类,并为您写一个 DoFieldExchange 重写,其中包括每个字段数据成员的 RFX 函数调用。 |
(可选)将所需要的任何参数数据成员手动添加到类中。 手动将 RFX 函数调用添加到每个参数数据成员的 DoFieldExchange,为参数组添加一个 CFieldExchange::SetFieldType 调用,并指定 m_nParams 中的参数总数。 请参见记录集:参数化记录集 (ODBC)。 |
|
(可选)手动将其他列绑定到字段数据成员。 手动增加 m_nFields。 请参见记录集:动态绑定数据列 (ODBC)。 |
|
构造记录集类的对象。 在使用该对象前,设置它的参数数据成员的值(如果有的话)。 |
为提高效率,框架使用 ODBC 预绑定参数。 当您传递参数值时,框架将参数值传递到数据源。 除非排序和/或筛选字符串已更改,否则只发送用于再次查询的参数值。 |
使用 CRecordset::Open 打开记录集对象。 |
执行记录集的查询,将列绑定到记录集的字段数据成员,并调用 DoFieldExchange 在第一个选定记录和记录集的字段数据成员之间交换数据。 |
使用 CRecordset::Move 或者菜单或工具栏命令在记录集中滚动。 |
调用 DoFieldExchange 将数据从新的当前记录传输到字段数据成员。 |
添加、更新和删除记录。 |
调用 DoFieldExchange 将数据传输到数据源。 |
请参见
参考
Macros, Global Functions, and Global Variables