7. dbrecordset.h
#include <comutil.h> 【程序编程相关:vc常用技巧】
#pragma once 【推荐阅读:关于RICHEDIT的两个问题】
class cdbrecordsetimpl ; 【扩展信息:MFC:thunk技术实现窗口类的封装】
#pragma comment(lib,"comsupp.lib")class cdbconnection ;class afx_ext_class cdbrecordset
{ //构造函数与析构函数public: cdbrecordset(void); virtual ~cdbrecordset(void);//接口函数
public:/*
* 打开记录集 * [in] szsql -> sql语句, select ...... * [out] rconnection -> 本次查询使用的数据库连接 */ bool open(lpctstr szsql,cdbconnection& rconnection) ;//记录集是否处于打开状态
bool isopened() ;//关闭记录集
bool close(void) ;//是否记录当前位置位于最后一条记录后面
bool iseof(void);//是否当前位置位于第一条记录前面
bool isbof(void);/*
* 获取记录总数 * 返回值: * -1 -> 错误 * >=0 -> 记录数 */ int getrecordcount(void) ;//移动到第一个记录
bool movefirst(void) ;//移到下一个记录
bool movenext(void) ;//移动到最后一个记录
bool movelast(void) ;//移动到前一个记录
bool moveprevious(void) ;/*
* 移动到指定记录 * 参数: * [in] noffset -> 相对当前位置移动noffset个记录,noffset < 0 表示向前移动,noffset > 0表示向后移动 */ bool move(int noffset) ;/*
* 获取当前记录集中的列总数 * -1 -> 错误 * >=0 -> 列总数 */ int getfieldcount(void) ;/* 获取列号,从0开始
参数 [in] szfieldname 列名 返回值 列号,-1表示没有找到 */ int getfieldorder(lpctstr szfieldname) ;/* 获取列名
参数 [in] nfieldorder列号,从0开始 返回值 列名 , 返回空串表示没有该序号对应的字段 */ lpctstr getfieldname(int nfieldorder) ;/* 获取列值,返回字符串,若是日期,则按照数据库默认的日期格式返回
参数 [in] nfieldorder -> 列号,从0开始 [out] strvalue -> 返回该序号对应的字段值的字符串 返回值: true 字段值成功获取 false 获取字段值失败 */ bool getfieldvalue(int nfieldorder,cstring& strvalue);/* 获取列值,返回字符串,若是日期,则按照数据库默认的日期格式返回
参数: [in] nfieldorder -> 列号,从0开始 返回值: 列值, 返回空串表示没有该序号对应的字段值或者该字段值为空 */ lpctstr getfieldvalue(int nfieldorder);/* 获取列值,返回整型,若字段不是整型或者可以转换为整型的字段,则返回失败
参数 [in] nfieldorder -> 列号,从0开始 [out] nvalue -> 返回该序号对应的字段值的整型值 返回值: true 字段值成功获取 false 获取字段值失败 */ bool getfieldvalueint(int nfieldorder,int& nvalue);/* 获取列值,返回整型,若字段不是整型或者可以转换为整型的字段,则返回失败
参数: [in] nfieldorder -> 列号,从0开始 返回值: 列值, 返回值不检查是否成功 */ int getfieldvalueint(int nfieldorder);... 下一页