- 5
- 0
- 约4.31千字
- 约 6页
- 2017-06-07 发布于湖北
- 举报
MFC关于ODBC数据库连接
2011-05-04 13:17:08
一、数据库应用程序中常用的几个类????1。CrecordView类?????一个CRecordView对象就是用一个视图中的控件来显示数据库中的记录。CRecordView类使用了动态数据交换(DDX)和数据库交换(RFX),在视图上的控件和数据源中的数据库中进行数据交换。 AppWizard 生成CRecordView和CRecordset类,并和相应的数据源关联。???2。CRecordset类????为了能够处理各种的数据库,最好从类CRecordset派生出一个子类来。数据库从数据源读取数据后,可以做以下的工作: 翻阅所有的记录。 修改记录,设定锁定状态。挑选有用的记录。给数据库排序。给定参数,让数据库在运行的时候自动选择数据。???3。CDatabase类 ????CDatabase在afxdb.h中定义。其对象是用来连接一个数据源的。为了使用CDatabase对象,需调用构造函数,并调用OpenEx或是Open函数,这将会打开一个连接。当构造一个CDatabase类完成后,可以向CRecordset类的对象传递这个CDatabase类的指针。连接数据源结束时,必须用Close函数关闭这个对象。???4。RFX?????5。CDBException????????CDBException是用来处理从其它ODBC类传过来的异常情况的。这个类一般是和关键字CATCH连用的。同样的用户也可以用全局函数AfxThrowDBException抛出一个异常情况 二、实例步骤????1。用AppWizard来生成一个单文档的ODBC工程文件????
???????
???????
???????
用ClassWizard给相应的Edit Box连接变量,注意,在Add Member Variable 对话框中的下拉组合框中已经有了相应表中的字段,只要选中相应的字段就可以了 ????
??????添加菜单响应函数 ???void CODBCView::OnDeleteRecord() //删除记录 {CRecordsetStatus m_cStatus;?try{ m_pSet-Delete(); }?catch(CDBException* m_pEx)?{ AfxMessageBox(m_pEx-m_strError);???m_pEx-Delete();???m_pSet-MoveFirst(); //若失败,将记录指针移到首记录???UpdateData(FALSE);???return;?}??m_pSet-GetStatus(m_cStatus);??if(m_cStatus.m_lCurrentRecord==0)????????m_pSet-MoveFirst(); //删除了最后一个记录??else????????m_pSet-MoveNext();??UpdateData(FALSE);} void CODBCView::OnUpdateDeleteRecord(CCmdUI* pCmdUI) ????????????????????????????????????????????????????????//删除后的刷新{ pCmdUI-Enable(!m_pSet-IsEOF()); }void CODBCView::OnUpdateRecord() {????????m_pSet-Edit();????????UpdateData(TRUE);????????if(m_pSet-CanUpdate())????????????????m_pSet-Update();}void CODBCView::OnUpdateUpdateRecord(CCmdUI* pCmdUI) ????????????????????????????????????????????????????????//刷新记录集{????????pCmdUI-Enable(!m_pSet-IsEOF()); }void CODBCView::OnClearDomain() //清除域 {????????m_pSet-SetFieldNull(NULL);????????UpdateData(FALSE);} ???
long CODBCSet::GetMaxID(){ MoveLast(); //移到最后一条记录????????return m___ID; //返回该ID值}void C
您可能关注的文档
- Matlab 基础-信号和系统补充课程.ppt
- MATLAB7.0使用详解-第14篇 符号计算.ppt
- MATLAB编程基础第2讲--数值数组、字符、元胞和结构数组.ppt
- MATLAB程序设计和教程课件 第2章 1MATLAB矩阵和其运算.ppt
- MATLAB分布式并行计算服务器配置及使用方法.docx
- Matlab及通信仿真_第二章 Matlab计算结果可视化及确知信号分析.pdf
- Matlab教程第十讲.pdf
- MATLAB教学第2讲.ppt
- 第八章 Coremail 电子邮件系统.pdf
- Matlab入门篇——正弦信号、实指数信号及复指数信号的仿真.ppt
- 广东省广州省实验中学教育集团2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州大学附属中学2025-2026学年八年级上学期奥班期中物理试题(解析版).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(含答案).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第八十六中学2025-2026学年八年级上学期期中物理试题(解析版).docx
- 广东省广州市第八十九中学2025-2026学年八年级上学期期中考试物理试题(含答案).docx
- 广东省广州市第二中学2025-2026学年八年级上学期期中考试物理试题(解析版).docx
- 2026《中国人寿上海分公司营销员培训体系优化研究》18000字.docx
- 《生物探究性实验教学》中小学教师资格模拟试题.docx
原创力文档

文档评论(0)