MFC对数据库进行操作的问题

kedy211 2004-05-08 10:02:41
1、我从书上看到可以在底层类进行数据源的封装,然后可以在上层控制类进行调用。那么应该如何进行底层的封装呢?又如何在上层进行调用?是不是在app里进行连接和数据源recordset的初始化,然后再在上层如对话框进行调用呢?这种情况下在基于对话框的程序里可以用吗?
2、基于对话框操作数据库的时候总是要为每一个对话框添加一个数据库变量,然后再用这个成员变量进行数据库的操作。我总觉得这样有些麻烦,有没有更好一点的办法呢?
...全文
30 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
菜牛 2004-05-09
  • 打赏
  • 举报
回复
封装是有层次的,比如ODBC就是对数据库RawDriver的封装,CDatabase和CRecordset类是对ODBC的封装。利用MFC向导生成CRecordset的继承类,就完成了对数据源的封装,调用的时候不用自己设定连接字符串,不用自己GetValue(),只要Open,用成员变量就可以访问数据库了。CRecordView是对数据库访问后取得结果显示的封装,便于设计界面。

凡是封装了的,总是以牺牲灵活性和性能为代价的,但是提高了使用的方便性。

对于利用封装后的类,还是自己开发数据库访问,就看你的技术水平了,比如数据库变量的问题,如果直接用CDabatase和CRecordset访问数据库,向对话框控件赋值,也是可以的。
kedy211 2004-05-09
  • 打赏
  • 举报
回复
这位兄台可否给小弟讲一下封装的原理,以及封装的过程,我现在很不明白。谢谢了。
huanyun 2004-05-08
  • 打赏
  • 举报
回复
在封装类得构造函数中初始化也可以
通常这样得封装很方便啊
kedy211 2004-05-08
  • 打赏
  • 举报
回复
还有就是这两种办法各有什么优点和缺点呢?我现在正在准备用VC6+SQLserver做一个数据库程序。可是由于开发经验较少,前几天我试着写了一下可是觉得很不好上手,特别是数据库操作这一块。

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧