你现在的位置 :
教程
=>
软件开发
=>
C/C++
=>用MFC ODBC操作Access数据库
文章搜索
用MFC ODBC操作Access数据库
时间: 2004-06-09 来自:论坛
2、 使用AppWizard创建一个数据库应用程序
笔者开始从AppWizard开始创建一个新的MFC AppWizard(exe)项目。命名为Jh,然后遵从以下步骤:
1) 在MFC AppWizard第一步对话框中,选择“单个文档”。
2) 在MFC AppWizard第二步对话框中,选择“查看数据库不使用文件支持”,再单击“Data Source”。
3)在RecordSet Type组框中,选择Dynaset。在Data Source组框中,单击ODBC单选按钮,然后从下拉列表中选择plc,如图2所示,单击ok,在弹出的新的对话框中选中message,即为本项目所要操作的表。
以后几步接收缺省值,单击“完成”即可。至此,已创建一个应用程序,并且在程序中自行生成一个数据源和数据源中的一个表的相关程序,其程序清单如下:
class CJhSet : public Crecordset//基于CRecordset的CjhSet新类
{
public:
CJhSet(CDatabase* pDatabase = NULL);
DECLARE_DYNAMIC(CJhSet)
// Field/Param Data
//{{AFX_FIELD(CJhSet, CRecordset)
//对应表中一些被绑定字段的变量
CString m_baudrate;
CString m_type;
CString m_unit;
CString m_number;
CString m_address;
CString m_istart;
CString m_iend;
CString m_ostart;
CString m_oend;
//}}AFX_FIELD
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CJhSet)
public:
virtual CString GetDefaultConnect(); // 返回被连接的数据源名称
virtual CString GetDefaultSQL(); // 返回数据源中所选表名称
virtual void DoFieldExchange(CFieldExchange* pFX); // RFX support
//}}AFX_VIRTUAL
// Implementation
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif};
3、 实现程序的显示记录的功能
一旦AppWizard完成编写这些文件,它将启动对话框编辑器,这样就可以设计自己的表单了。CRecordView应用程序围绕着充当应用程序主窗口的对话框而创建。笔者也将使用像表单一样的对话框来显示存储在plc数据库记录域中的值。如图3所示来放置静态文本框与编辑文本框。
CJHSet类的成员变量如图4所示。所有的变量均为CString对象。由AppWizard创建的每个变量的类型一般与相应数据库域的类型相似。除了创建成员变量,AppWizard还编写了一组数据交换函数——类似于对话框的DDX函数——来在用来显示信息的控件与定义于CRecordSet类中的数据库域之间交换信息。
为了实现数据传输,就要把每个控件与代表数据库域的CJHSet变量联系起来。笔者通过使用CJHView来成员变量m_pSet来指向应用程序的CJHSet对象。选择每个资源ID(笔者这里未修改编辑框的默认ID),并单击Add Variable,从下拉表中直接选择相应的成员变量名。全部设置好之后单击OK,至此,运行程序,就可以实现简单的与数据库之间的数据显示功能。
共 3 页,
1
2
3
相关文章
·
多位技术专家针对C++展开语言选择之争
·
神话与谬误:争论C++前你应当知道什么
·
在C/C++算法设计中使用任意位宽
·
简单实用资源DLL与语言选择菜单的实
·
代码实例用托管C++监视Windows事件日
·
在托管C++中利用path对象处理Temp文件
·
C++/CLI中有效使用非托管并列缓存
·
对C++程序内存管理的精雕细琢
·
实例解析C++/CLI之静态构造函数
·
C++启蒙之C++中的类
标题
正文
·如何让您的网站流量大增?
热点排行
最新文章
多位技术专家针对C++展
神话与谬误:争论C++前
在C/C++算法设计中使用
简单实用资源DLL与语
代码实例用托管C++监视
在托管C++中利用path对
C++/CLI中有效使用非
对C++程序内存管理的精
实例解析C++/CLI之静
C++启蒙之C++中的类
C++/CLI解析之基于堆
C++中堆内存(heap)的概