c++通过ADO连接数据库

c++通过ADO连接数据库,具体要求步骤如下:

1、要导入连接ADO库文件信息,方法

  1. #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")    rename("BOF","adoBOF")//必须要有(换行要有 \),如果是vc6开发,此句最好放在StdAfx.h头文件中,并且放在 "#endif"上方,不要放在"afxwin.h"头文件之上,否则出错。
  2. using namespace std;      //可有可无
  3. #pragma warning(disable:4146)    //禁止4146错误代码的警告提示,可有可无(此句放在"#import……"之上

2、初始化COM库环境(也就是加载运行ado库文件的支持函数)

CoInitialize(NULL);    //程序执行时初始化或构造函数时运行,且必须在使用ado函数之前调用

       CoUninitialize( );        //析构函数或程序退出时执行
       
       或在程序执行前(构造函数中)直接执行AfxOleInit(),就不需要调用CoUnitialize(),因为在AfxOleInit()退出时,该函数也执行COM资源的释放
3、声明3个智能指针,功能和作用如下:
    _ConnectionPtr m_pConn;    //主要用于连立与数据库的连接
    m_pConn.CreateInstance(__uuidof(Connection)); //建立对象的实例,也可以用m_pConn.CreateInstance("ADODB.Connection")
    
    _RecordsetPtr m_pRst;    //主要用于对数据库记录的操作
    m_pRst.CreateInstance(__uuidof(Connection));
    _CommandPtr m_pCmd;     //主要用于执行带参数的SQL语句的执行(如果不带参数的SQL语句执行,可以使用_RecordsetPtr)
     m_pCmd.CreateInstance(__uuidof(Connection));
     
4、使用后要释放资源,释放资源前要先关闭:
     m_pCmd.Release();
     m_pRst.Release();
     m_pConn.Release();  //这个指针资源必须最后释放,否则出错
时间: 2024-10-13 20:38:40

c++通过ADO连接数据库的相关文章

VC++ 通过ADO连接数据库查询时返回空值报错的解决方案

当数据库的字段值允许为空时, 而且此时内容也为空时,则执行查询会出错,例如 CString str = pRecordset->GetFields()->GetItem((long)0)->GetValue(); 或者 str= pRecordset->GetCollect("posInfo"); 会弹出如下窗口提示出错! 更加奇怪的是  catch(...)也抓不到异常 今天碰着个问题算是头弄大了  最后终于弄好了 报错的原因:   在GetCollct返回了

c# ado 连接数据库 六步曲

建立连接分为六步:1.定义连接字符串,oracle 的连接字符串为: private static string connString = "Data Source=192.168.1.130:1521/mydata;Persist Security Info=True;User ID=em_test;Password=test123;Unicode=True"; 2.根据连接字符串成连接3.打开连接4.实例命令对象5.操作6.关闭连接 看一个例子: using System; usi

猎豹MFC--CFile类家族介绍ADO连接数据库 打开数据库 关闭数据库 连接字符串

  ODBC最古老,但到今天还在使用.偶尔使用. DAO  和RDO  为旧接口. OLE DB新,复杂  微软 出了ADO. VC++   +  ADO是主流: MySQL  和Oracle都有专用接口. ADO底层是OLE DB实现.ADO是COM组件. ADO 专用文件夹: 要用msADO15.dll 打开stdafx.h头文件:在其内导入该库: 在初始化实例时  初始化ADO: 下面都是COM编程要求做的: windows内部大量使用COM. 异常处理: 然后整个项目就可以使用ADO了.

C++使用ADO连接数据库及其实例

读写数据库的技术很多,现在多用ADO.ADO以COM方式提供,所以它的很多行为遵循COM规范.首先,要引入ADO的COM文件,它的位置一般在"C:/Program Files/Common Files/System/ado/msado15.dll". 1. 引入ADO 打开预编译头文件StdAfx.h,写上引入声明: #import "C:/Program Files/Common Files/System/ado/msado15.dll" no_namespace

vc++ ado连接数据库

基本步骤: 1.创建一个基于对话框的应用程序ADODatabase. 2.创建一个用来连接的ADO类库.系统菜单中Insert->New Class项,class type选择Generic Class; 在Name后输入类名"ADOConn",点OK.这样,在工程上自动生成ADOConn.h和ADOConn.cpp两个文件. 3.在ADOConn.h中导入一个ADO动态链接库msado15.dll, 添加代码:#import "c:\Program Files\Com

VC6.0中用ado连接数据库出错

1. 在stdafx.h中添加 #import "c:\\program files\\common files\\system\\ado\\msado15.dll"  no_namespace rename("EOF", "adoEOF")并且要在电脑注册32位的msado15.dll.我的win7下没有注册成功,我后来用的XP(XP系统已经注册了不用自己注册) 2. 在CxxxApp.cpp的InitInstance()函数中添加数据库连接代

ADO连接数据库【msado15.dll】

Microsoft ActiveX Data Objects (ADO) 注册表查看ADO版本:HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess下有Version项 C:\Program Files (x86)\Common Files\System\ado

Delphi 通过ADO连接数据库

原文地址:https://www.cnblogs.com/fanweisheng/p/11385205.html

VC++下封装ADO类以及使用方法

操作系统:windows 7软件环境:visual studio 2008 .Microsoft SQL 2005本次目的:介绍一个已经封装的ADO类,简单说明怎么导入使用 首先声明一下,这个封装的ADO类是在[vc知识库 ]下载的,因为最近在数据库课程设计,所以对vc++下使用ADO连接数据库不是很了解,故若是本文有错误的地方的,请不吝指出.具体的ADO类各个封装功能请进入[原文地址 ]查看.在此仅介绍使用此ADO封装类的入门,如连接数据库,显示记录等.一个测试例子如下: 使用步骤:1.先从[