微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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();  //这个指针资源必须最后释放,否则出错

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐