天天看点

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.0或vs2012中:插入->类,弹出一个窗口,类名叫做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)

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

           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)

           m_pconnection->execute(bstrsql,null,adcmdtext);

           return true;

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

           return false;

}       

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