VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 1052|回复: 7

[原创] 关于DAO数据库编程的几点经验

[复制链接]
79_avatar_middle
在线会员 发表于 2016-11-28 15:33:29 | 显示全部楼层 |阅读模式
一、如何在新建时没选数据库支持的程序中加入数据库支持

以对话框DAO-Access为例:

1.1用类向导新建类.Name:"mydb", Base Class:"DaoRecordset",选择正确的数据源和表.
注:vc6无法直接对access2000进行支持,要用的话先转换为97版才行。

1.2在mydb头文件加入#include"afxdao.h".在对话框类头文件加入#include"mydb.h".

1.3测试:在对话框类加入一按钮,在其响应函数内加入如下代码:

mydb db;
db.Open();
MessageBox(db.m_answerA);
db.Close();

这里假设我的数据库表里有answerA字段.

二、如何在数据库没有静态绑定其他控件的程序手工加入静态绑定.

仍以上面为例.先把先前的按钮及其消息处理函数删掉.加入一EDIT控件.

2.1 声明:在对话框头文件的AFX_DATA内加入:mydb* rec;如下:

//{{AFX_DATA(CAaaDlg)
enum { IDD = IDD_AAA_DIALOG };
mydb* rec;
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA

2.2 绑定:在类向导为edit控件添成员变量m_amswerA.(在向导中选择)

2.3 初始化:在对话框构造函数内加入

rec=new mydb;
rec->Open();

2.4 销毁:响应对话框WM_CLOSE消息,加入消息处理代码:

rec->Close();
delete rec;

2.5 测试:编译运行,就可以看到EDIT框里出现了数据库的内容.唯一不足的是不能自动更新显示.需手工UpdateData(0);

三、如何确保上述程序拷到别人机里仍可运行.(数据库也拷在同一目录)

把刚才mydb类GetDefaultDBName()函数内容改为:

char str[255];
GetCurrentDirectory(255,str);
strcat(str,"\\my.mdb");
return _T(str);

评分

参与人数 4驿站币 +6 热心值 +6 收起 理由
16_avatar_small 阳光 + 1 + 1 感谢分享!
88_avatar_small 寂寞江湖 + 2 + 2 支持原创!
10_avatar_small cmx006 + 1 + 1 感谢分享!
65_avatar_small 编程者 + 2 + 2 感谢分享!

查看全部评分





上一篇:Win32 编程基础 5-6-7-8-9
下一篇:VC用ADO访问数据库全攻略
65_avatar_middle
donate_vip 发表于 2016-11-28 20:02:40 | 显示全部楼层
多发教程
00_avatar_middle
在线会员 发表于 2016-11-29 17:32:42 | 显示全部楼层
需要学习下!
75_avatar_middle
在线会员 发表于 2016-11-30 10:47:26 | 显示全部楼层
需要学习下!
87_avatar_middle
在线会员 发表于 2018-1-14 15:24:44 来自手机 | 显示全部楼层
谢谢发表
15_avatar_middle
在线会员 发表于 2018-5-31 22:04:23 | 显示全部楼层
需要学习下!
32_avatar_middle
在线会员 发表于 2018-7-19 14:16:52 | 显示全部楼层
学习数据库相关操作
75_avatar_middle
在线会员 发表于 2018-7-21 11:09:47 | 显示全部楼层
感谢楼主分享!
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号tongdun|网站地图wx_jqr

GMT+8, 2019-6-19 20:04

Powered by Discuz! X3.4

© 2009-2019 cctry.com

快速回复 返回顶部 返回列表