视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
ODBC连接Access数据库图文全解之利用VC
2020-11-09 07:30:38 责编:小采
文档


转自:http://www.cosdiv.com/page/M0/S5/5927.html 现在我们就开始介绍 VC 如何通过 ODBC 数据源来 连接 Access 数据库 的过程:包括从数据源的创建到VC代码的实现。 1.首先在控制面板中,打开ODBC数据源,点击用户DSN选项,在出现的界面中点击添加,如

转自: http://www.cosdiv.com/page/M0/S5/5927.html

现在我们就开始介绍VC如何通过ODBC数据源来连接Access数据库的过程:包括从数据源的创建到VC代码的实现。


1.首先在控制面板中,打开ODBC数据源,点击用户DSN选项,在出现的界面中点击添加,如下图所示:



然后,点击完成按钮,出现下图,填入数据源名(可随意取名,本处设为biao)。



点击确定即可。


2.在ACCESS中创建数据库,本例中为data(只包含 number,name,score三列),可从我提供的这个例子下COPY。


3.建立应用程序项目


(1)打 开File 菜 单 的New 选 项, 选 取Projects,选择MFC AppWizard (exe),填 入 工 程 名,本例为DATA1。


(2)把数据库文件 data拷入新建的工程目录。


(3)应用程序的类型指定为SDI,在Step2 对话框中选择Header Files Only选项,在Step6是将视图基类指定为CScrollView。


(4)用ClassWizard 创建记录集类。从Add Class菜单中选择New,并按下图填充对话框:(说明:一个CRecordset对象代表从数据源中查询的一个记录集。)



(5)点击OK,进入Data Source,选择biao数据源,并选择Dynast选项,如下图所示:



在选择了数据源之后,ClassWizard提示我们选择一个表。如下图所示:



(6)在ClassWizard中,针对新产生的CDataSet类,单击Member Variables标签。此时ClassWizard 应按照数据库列的名称产生了如下的数据成员:



(7)在CData1View类中添加数据成员。



(8) 在Cdata1Doc中添加如下成员:



(9)编辑DATA1View.cpp中的OnDraw() 和OnInitialUpdate()函数:


  1. void CDATA1View::OnDraw(CDC* pDC)
  2. {
  3. CDATA1Doc* pDoc = GetDocument();
  4. ASSERT_VALID(pDoc);
  5. // TODO: add draw code for native data here
  6. TEXTMETRIC tm;
  7. pDC->GetTextMetrics(&tm);
  8. int nLineHeight=tm.tmHeight+tm.tmExternalLeading;
  9. CPoint pText(0,0);
  10. int y = 0;
  11. CString str;
  12. if (m_pSet->IsBOF()) { // detects empty recordset
  13. return;
  14. }
  15. m_pSet->MoveFirst(); // fails if recordset is empty
  16. while (!m_pSet->IsEOF()) {
  17. pDC->TextOut(pText.x, pText.y, m_pSet->m_number);
  18. pDC->TextOut(pText.x+1000, pText.y, m_pSet->m_name);
  19. pDC->TextOut(pText.x+4000, pText.y, m_pSet->m_score);
  20. m_pSet->MoveNext();
  21. pText.y -= nLineHeight;
  22. }
  23. }
  24. void CDATA1View::OnInitialUpdate()
  25. {
  26. CScrollView::OnInitialUpdate();
  27. CSize sizeTotal(8000, 10500);
  28. SetScrollSizes(MM_HIENGLISH, sizeTotal);
  29. m_pSet = &GetDocument()->m_dataSet;
  30. if (m_pSet->IsOpen()) {
  31. m_pSet->Close();
  32. }
  33. m_pSet->Open();
  34. }

(10)data1View.cpp 中加入#include "dataSet.h"。


(11)编译结果应如下所示:


下载本文
显示全文
专题