1. CADORecordset类的设计
建立一个ADORecordset.h头文件,该文件中包含了CADORecordset类的声明,CADORecordset类是对ADO对象中Recordset对象的封装,并提供了在数据库应用程序中对记录集进行操作的常用接口,使得应用程序的编写更加简单方便。CADORecordset类的声明见程序清单4-9。
程序清单4-9 ADORecordset.h文件
2. CADORecordset类的实现
建立一个ADORecordset.cpp文件,首先在文件的开始部分加入包含的头文件,具体加入的代码如程序清单4-10所示。
程序清单4-10 ADORecordset.cpp文件
然后依次把下面给出的各成员函数的实现代码加入到ADORecordset.cpp文件中。
(1)构造函数与析构函数。
构造函数用来将类中的记录集对象指针m_pRs初始化NULL;析构函数首先判断记录集是否打开,如果记录集已经打开,则关闭记录集,并将记录集对象指针设置为NULL。构造函数与析构函数的实现如程序清单4-11所示。
程序清单4-11 构造函数与析构函数
(2)Open()函数。
该函数用来打开一个记录集。该函数有两个参数:第一参数sCommandString用来指定创建记录集所使用的命令串,一般情况下为SQL的SELECT语句;第二个参数adoConn为CADOConnection类的对象指针,用来指定所创建的记录集所在的数据源。Open()函数的实现如程序清单4-12所示。
程序清单4-12 CADORecordset::Open()函数
(3)Close()函数。
该函数用来关闭已打开的记录集对象。该函数首先判断记录集是否处于打开状态,如果处于打开状态,则关闭记录集,并将记录集对象指针置为NULL。该函数的实现见程序清单4-13。
程序清单4-13 CADORecordset::Close()函数(www.xing528.com)
(4)记录指针移动函数。
当要对记录进行操作时,首先要将记录指针指向要操作的记录,然后才可以进行修改、删除等操作。记录指针移动函数包括MoveFirst()、MovePrev()、MoveNext()、MoveLast()四个函数,分别完成将记录指针移到第一条记录、上一条记录、下一条记录、最后一条记录上。这四个函数的实现见程序清单4-14。
程序清单4-14 记录指针移动函数
(5)AddNew()函数。
该函数用来在记录集中添加一条空白记录。当需要添加新记录时,首先调用该函数添加一条空白记录,然后输入各个字段对应的值,最后调用Update()函数实现数据的保存。该函数的实现见程序清单4-15。
程序清单4-15 CADORecordset::AddNew()函数
(6)Delete()函数。
该函数用来删除当前记录。如果当前记录删除成功,则将记录指针移到下一条记录上。该函数的实现见程序清单4-16。
程序清单4-16 CADORecordset::Delete()函数
(7)Update()函数。
该函数用来保存记录数据。如果添加了一条新记录或修改了当前记录,为了使添加或修改操作生效,则必须调用Update()函数对记录数据进行保存。该函数的实现见程序清单4-17。
程序清单4-17 CADORecordset::Update()函数
(8)UpdateBatch()函数。
该函数用来保存记录数据。该函数与Update()函数的不同就是:Update()函数只更新当前记录;而UpdateBatch()函数是批量更新,可以一次性地更新多条记录。该函数的实现见程序清单4-18。
程序清单4-18 CADORecordset::UpdateBatch()函数
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。