文档章节

MFC ODBC数据库开发技术

来来叔叔
 来来叔叔
发布于 2017/08/04 23:57
字数 513
阅读 4
收藏 0
 

1.MFC ODBC 主要类的介绍

       visual c++提供了MFC ODBC 类,封装了ODBC API,这使得利用MFC来创建ODBC的应用程序非常简便。在MFC ODBC类中,常用的类有CDatabase(数据库类)、CRecordset(记录集类)、CRecordView(可视记录集类)和CDBException(异常类)。

       CDatabase:用来建立和数据库数据源的连接,通过它可以对数据库进行操作。如使用ExecuteSQL函数实现记录的添加、修改和删除。

       CRecordset:代表一个从数据源中获取的记录集。分为动态集(dynaset)和快照集(snapshot)。快照集提供对数据的静态访问,就像对数据源的某些数据进行拍照一样,是静态的数据,其它用户对数据源中数据进行添加、修改和删除时,快照集中的记录不受影响,只有在调用了CRcordset的Requery函数重新查询时,快照集才会发生变化。动态集提供了对数据的动态访问,和其它用户所做的更改保持同步。主要使用CRecordset类的Open函数从数据源中提取记录集,进行记录的查询。

       CRecordView:提供了一个表单视图来显示和操作记录集,它派生于CFormView类,同时绑定了一个记录集,因而可以方便地显示、修改、添加和删除记录。

       CDBExecption:处理MFC ODBC类在操作数据库时发生的异常。

2.数据库的连接

    在使用MFC ODBC进行数据库开发时,需要引入MFC ODBC数据库类的头文件,在stdafx.h中

#include<afxdb.h>

首先定义一个CDatabase对象,然后利用CDatabase类的OpenEx函数来建立与数据源的连接。

CDatabase m_db;

virtual BOOL OpenEx( LPCTSTR lpszConnectString, DWORD dwOptions = 0 );
throw( CDBException, CMemoryException );

其中lpszConnectString是连接字符串,包括数据源名,用户名和用户密码,格式为DSN=SQLServer_Source;UID=user;PWD=user_pwd。

例:连接数据库,

         m_db.OpenEx("DSN=test;UID=sa;PWD=",CDatabase::noOdbcDialog);

其中省去了处理异常的代码。

© 著作权归作者所有

共有 人打赏支持
来来叔叔
粉丝 0
博文 100
码字总数 55732
作品 0
广州
高级程序员
私信 提问
数据库开发——各类DB的概念关系

1、客户服务器:信息被传播到“哑终端”与大型主机交流 网络使得客户机与服务器共享信息,引发客户服务器计算过程。 2、OLE DB、ODBC、ADO的关系: OLE DB:对象链接和嵌入数据库。 ADO:Act...

徐燕
2011/04/15
0
0
【外资美企】【SAS Access Developer】【20w-40w】

公司性质:做数据开发, 数据挖掘 外资美企 职位: SAS Access Developer 数据库开发工程师 要求:c/c++底层开发本科5年以上工作经验 硕士3年以上也可以,做c/c++十年左右没有底层经验的也可...

叶锋
2012/05/03
1K
20
使用MFC实现数据库信息显示和增删改查

【业务需求】 一、功能需求 1、根据提供的UI原型设计界面,界面种类主要是两类界面,一类是检索信息的主界面(TreeCtrl+ListCtl),另一类是检索的详细信息展现页面(Edit、时间控件)用于增...

yagerfgcs
2017/10/29
0
0
北京,美资外企,招聘 SAS Access Developer

北京,美资外企,招聘 SAS Access Developer 公司性质:主要是在做数据挖掘,数据开发的 这个职位:主要是在做数据库c/c++底层开发 工作地点:北京宣武门,是在研发中心上班 薪资:年薪在20w...

叶锋
2012/04/14
334
5
【猎头代招聘】【c/c++】【数据库底层开发】【最低学历本科以上】

公司性质:做数据开发,数据挖掘 职位:SAS Access Developer数据库开发工程师 要求:c/c++底层开发5年以上工作经验 年薪:20w左右--base(10k-15k)+补助(1000左右,每月都有)+福利(公基...

叶锋
2012/04/20
651
6

没有更多内容

加载失败,请刷新页面

加载更多

ORA 各种oraclesql错误

ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某...

青峰Jun19er
6分钟前
2
0
没错,老板让我写个 BUG!

前言 标题没有看错,真的是让我写个 bug! 刚接到这个需求时我内心没有丝毫波澜,甚至还有点激动。这可是我特长啊;终于可以光明正大的写 bug 了🙄。 先来看看具体是要干啥吧,其实主要就是...

crossoverJie
19分钟前
1
0
开源软件会被云杀死吗 ?

本文转载云头条,原作者:Michael Stiefel是Reliable Software公司的负责人,是一名软件架构和开发顾问。 文章要点 虽然开源开发不会消失,但商业开源厂商的未来不是很有希望。随着全面管理的...

linuxCool
53分钟前
5
0
OSChina 周三乱弹 —— 谈什么对象?睡什么觉?

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @胖达panda :最肯忘却古人诗,最不屑一顾是相思。分享童丽的单曲《红豆生南国》: 《红豆生南国》- 童丽 手机党少年们想听歌,请使劲儿戳(这...

小小编辑
57分钟前
374
5
stylus

stylus基础教程,stylus实例教程,stylus语法总结

miaojiangmin
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部