zoukankan      html  css  js  c++  java
  • VC++ 中ADO数据库的配置(Access2003-Access2007)

    vc++ ADO数据库的配置(Access2003-Access2007

    1.       首先在StdAfx.h中添加以下代码引入数据库:

    #import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF")rename("BOF","adoBOF")

    2.       然后再VC6.0VS2012中:插入->类,弹出一个窗口,类名叫做CADOConn,基类选择Generic Class(切记)

    3.       然后在Class View中双击CADOConn,添加以下代码:

    class CADOConn 

    {

    public:

    CADOConn();

    virtual ~CADOConn();

    _RecordsetPtr m_pRecordset;//记录集指针

    _ConnectionPtr m_pConnection;

    void OnInitADOConn();//连接数据源

    _RecordsetPtr& GetRecordset(_bstr_t bstrSQL);//获取打开的记录集指针

    BOOL ExecuteSQL(_bstr_t bstrSQL);//执行SQL语句

    void ExitConnect();//断开数据连接

     

    };

    4.       然后在File View中找到ADOCon.cpp文件,添加以下代码:

    CADOConn::CADOConn()

    {

     

    }

     

    CADOConn::~CADOConn()

    {

     

    }

     

    void CADOConn::OnInitADOConn()

    {

    ::CoInitialize(NULL);

    try

    {

            m_pConnection.CreateInstance("ADODB.Connection");

    //      _bstr_t strConnect="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Med.mdb";//.mdb放在工程目录下  access2003

               _bstr_t strConnect ="Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Med.mdb;Persist Security Info=False";//access2007

               m_pConnection->Open(strConnect,"","",adModeUnknown);

              

    //      AfxMessageBox("数据库连接成功");

    }

    catch(_com_error e)

    {

               AfxMessageBox("数据库连接失败");

    }

    }

    void CADOConn::ExitConnect()

    {

    if(m_pRecordset!=NULL)//关闭记录集和断开数据源链接

               m_pConnection->Close();

    ::CoUninitialize();//释放COM环境

    }

    _RecordsetPtr& CADOConn::GetRecordset(_bstr_t bstrSQL)

    {

    //打开记录集,返回记录集指针

    try

    {

               if(m_pConnection==NULL)

                        OnInitADOConn();

               m_pRecordset.CreateInstance(__uuidof(Recordset));

               m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,

                        adLockOptimistic,adCmdText);

    }

    catch (_com_error e)

    {

               AfxMessageBox("记录集打开失败");

    }

    return m_pRecordset;

    }

    BOOL CADOConn::ExecuteSQL(_bstr_t bstrSQL)

    {

    try

    {

               if(m_pConnection==NULL)

                        OnInitADOConn();

               m_pConnection->Execute(bstrSQL,NULL,adCmdText);

               return true;

    }

    catch (_com_error e)

    {

               AfxMessageBox("不能打开记录集");

               return false;

    }       

    }

    5.到此ADO数据库配置成功

     

  • 相关阅读:
    Struts 2读书笔记拦截器之拦截器的配置
    Struts 2读书笔记使用Struts 2控制文件上传
    javaScript数组使用字符串作为下标
    Struts 2读书笔记拦截器之示例:使用拦截器完成权限控制
    Struts 2读书笔记Struts 2的自定义类型转换器
    Struts 2读书笔记使用Struts 2的输入校验
    Struts 2读书笔记Struts 2实现文件过滤
    关于Struts 2文件上传报错:Unable to find 'struts.multipart.saveDir' property setting
    oraclehttp://localhost:5560/isqlplus 打不开的解决方案
    Struts 2读书笔记struts 的action配置
  • 原文地址:https://www.cnblogs.com/zhangaihua/p/3718080.html
Copyright © 2011-2022 走看看