`
hereson
  • 浏览: 1444370 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

VC下利用ADO连接Access数据库(一)

阅读更多

#include <iostream.h>
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename ("EOF", "adoEOF")  

int main(){

     //使用ADO连接数据库...
     //---------------------------------------------------------------------------------
     _ConnectionPtr m_pConnection;

     CoInitialize(NULL);
     m_pConnection.CreateInstance(__uuidof(Connection));

     // 在ADO操作中建议语句中要常用try...catch()来捕获错误信息,
     // 因为它有时会经常出现一些想不到的错误。
     try                 
     {    
         // 打开本地Access库db1.mdb
         m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb","","",adModeUnknown);
     }
     catch(_com_error e)
     {
         cout<<"数据库连接失败,确认数据库db1.mdb是否在当前路径下!"<<endl;
         return FALSE;
     } 
     //-------------------------------------------------------------------------------------
     //建立数据集
     //-------------------------------------------------------------------------------------
     _RecordsetPtr m_pRecordset;
     m_pRecordset.CreateInstance(__uuidof(Recordset));

     // 在ADO操作中建议语句中要常用try...catch()来捕获错误信息,
     // 因为它有时会经常出现一些意想不到的错误。
     try
     {    
         m_pRecordset->Open("SELECT * FROM Home2",       
         m_pConnection.GetInterfacePtr(), // 获取库接库的IDispatch指针
         adOpenDynamic,
         adLockOptimistic,
         adCmdText);
     }
     catch(_com_error *e)
     {
         //AfxMessageBox(e->ErrorMessage());
         cout<<e->ErrorMessage()<<endl;
     }    

     //--------------------------------------------------------------------------------------
     //读取数据
     //--------------------------------------------------------------------------------------
     _variant_t var; 
     char *strID,*strX,*strY;
     float X,Y;
     try
     {
         if(!m_pRecordset->BOF)
             m_pRecordset->MoveFirst();
         else
         {
             cout<<"表内数据为空"<<endl;
             return 1;
         }
         // 读入库中各字段并加入列表框中
         while(!m_pRecordset->adoEOF)
         {
             var = m_pRecordset->GetCollect("ID");
             if(var.vt != VT_NULL)
                 strID= _com_util::ConvertBSTRToString((_bstr_t)var);     //_variant_t转字符串
             var = m_pRecordset->GetCollect("X");
             if(var.vt != VT_NULL)
                     strX=_com_util::ConvertBSTRToString((_bstr_t)var);
             var = m_pRecordset->GetCollect("Y");
             if(var.vt != VT_NULL)
                 strY=_com_util::ConvertBSTRToString((_bstr_t)var);
             cout<<strID<<"is"<<strX<<" "<<strY<<endl;
             m_pRecordset->MoveNext();
         }
     }
     catch(_com_error *e)
     {
         cout<<e->ErrorMessage()<<endl;
     }  

     //--------------------------------------------------------------------------------------
     //关闭数据集
     m_pRecordset->Close();
     m_pRecordset = NULL;    
     //--------------------------------------------------------------------------------------
     //关闭数据库连接
     //--------------------------------------------------------------------------------------
     if(m_pConnection->State)
     m_pConnection->Close();
     m_pConnection= NULL;
     return 0;
} 

分享到:
评论

相关推荐

    VC下用ADO读写Access数据库的资料及源代码

    标题 "VC下用ADO读写Access数据库的资料及源代码" 涉及到的知识点主要集中在Microsoft Visual C++(VC)环境下,如何利用ActiveX Data Objects(ADO)与Microsoft Access数据库进行交互。以下是相关的重要知识点: ...

    VS2010 C++ ADO读取ACCESS 数据库

    ADO是Microsoft提供的一种接口,它允许开发者与各种数据源进行交互,包括MS Access数据库。在VS2010环境下,C++程序员可以利用ADO库轻松实现数据库操作。 首先,确保你已经安装了Microsoft Office或至少是Microsoft...

    ADO访问ACCESS数据库-数据库应用-VC_C++

    在VC++环境中,使用ADO(ActiveX Data Objects)来访问ACCESS数据库是一种常见的数据访问技术。ADO提供了一种统一的方式来操作各种数据库系统,包括Microsoft Access。本文将深入探讨如何利用ADO在VC++中实现数据库...

    VC通过ADO访问ACCESS数据库

    本教程将深入探讨如何使用Microsoft Visual C++ 6.0(简称VC++6.0)通过ActiveX Data Objects(ADO)来连接和操作ACCESS数据库。ADO是微软提供的一种高效、简洁的数据访问接口,它允许开发者轻松地在各种数据源之间...

    VC++6.0使用ADO开发ACCESS数据库静态库脱机2.0.rar

    本文通过实例演示如何在VC++中使用ADO进行ACCESS数据库编程,并对涉及到的几个概念进行详细解释。 本文不对ADO和ACCESS的基本概念进行详细解释,主要包括以下内容: 第一部分 ADO和ADOX到底是什么,二者的作用和区别...

    ADO连接access数据库做得个人财务管理软件

    标题中的“ADO连接access数据库做得个人财务管理软件”指的是使用ActiveX Data Objects (ADO) 技术,通过Visual C++(VC)编程环境开发的一款个人财务管理应用程序。该软件利用Microsoft Access数据库来存储和管理...

    VC6通过ADO操作Access数据库(AdoRWAccess)

    VC6通过ADO操作Access数据库(AdoRWAccess),参见: http://download.csdn.net/detail/jojolovejj/3048825 可是那边没有代码下载,折腾N久终于找到了

    VC中用ADO连接ACCESS数据库,实现基本操作

    在Microsoft Visual C++ (VC) 开发环境中,利用ActiveX Data Objects (ADO) 连接并操作Microsoft Access数据库是一项常见的任务。ADO是Microsoft提供的一种数据访问接口,它允许程序员通过简单且直观的方式与各种...

    VC用ADO连接ACCESS数据库初级入门实例(会连者不必看)

    **VC使用ADO连接ACCESS数据库初级入门实例** 在VC++编程中,访问数据库是常见的需求,尤其是在开发桌面应用程序时。ADO(ActiveX Data Objects)是Microsoft提供的一种数据访问接口,它使得程序员可以方便地与各种...

    VC++下使用ADO访问Access数据库完整篇

    ### VC++ 下使用 ADO 访问 Access 数据库详解 #### 一、概述 本文将详细介绍如何使用 Visual C++(VC++)结合 ActiveX Data Objects (ADO) 技术访问 Microsoft Access 数据库的方法。ADO 是一种用于 Windows 应用...

    Test_ADO.rar_ ADO ACCESS _ADO ACCESS_vc access_vc ado access_数据库

    标题中的"Test_ADO.rar"是一个压缩包文件,其中包含了关于使用ADO(ActiveX Data Objects)在VC++(Microsoft Visual C++)环境下操作ACCESS数据库的示例代码和资源。ADO是微软开发的一种数据访问接口,它允许程序员...

    VC ADO连接Access数据库与查询简单实例

    在本文中,我们将深入探讨如何使用Visual C++ (VC) 和 ActiveX Data Objects (ADO) 连接并查询Microsoft Access数据库。这对于初学者来说是一个很好的起点,因为ADO提供了一个直观且功能强大的接口来操作数据库。 ...

    VC ADO连接类用于连接数据库

    2. **连接字符串**:在VC中,使用ADO连接数据库首先需要创建一个Connection对象,并通过ConnectionString属性设置连接字符串。连接字符串通常包含数据库类型、服务器名称、数据库名称、用户名和密码等信息。例如,...

    VC技巧与VC+ADO+Access数据库数据库大全

    【VC技巧与VC+ADO+Access数据库大全】涵盖了VC++编程中的多个重要知识点,主要集中在MFC消息映射机制、ADO数据库操作以及VC中的实用技巧。以下是对这些知识点的详细说明: 1. **MFC消息映射机制**: - 消息映射是...

    ADO_VC.rar_ADO_access 数据库_ado c++_ado vc_vc ado

    标题"ADO_VC.rar_ADO_access 数据库_ado c++_ado vc_vc ado"提及了几个关键概念:ADO(ActiveX Data Objects)、VC++(Visual C++)、Access数据库,以及它们在C++环境下的应用。这表明讨论的主题是使用ADO在VC++...

    vc++中用ADO连接access数据库

    在VC++中使用ADO(ActiveX Data Objects)连接Access数据库是一项常见的任务,尤其对于初学者而言,这是一个很好的学习起点。ADO是Microsoft开发的一种数据访问接口,它提供了与各种数据库(如Access、SQL Server等...

    VC利用ADO实现ACCESS 数据库的JPG图片的存储 查询

    在VC++开发环境中,利用ADO(ActiveX Data Objects)与ACCESS数据库进行交互是一种常见的实践,尤其是在处理简单数据存储和查询的场景下。本教程将详细讲解如何通过ADO在ACCESS数据库中存储和查询JPG图片。 首先,...

    vc编写的利用ado访问access数据库.rar

    这是一个利用ado访问数据库的程序,对初学者有一定的借鉴作用-ado access to the database using the procedures for beginners a certain reference

Global site tag (gtag.js) - Google Analytics