#import "C:\Program Files\Common Files\System\ado\msado15.dll"no_namespace \rename("EOF","adoEOF")rename("BOF","adoBOF")
//添加动态链接库,并对结尾指示符进行更名避免与系统中的重复
class ADOConn
{
public:
BOOL ExecuteSQL(_bstr_t bstrSQL);
ADOConn();
virtual ~ADOConn();
_ConnectionPtr m_pCon;
_RecordsetPtr m_pRecordset;
void OnInitADOConn();
void ExitConnect();
_RecordsetPtr& GetRecordSet(_bstr_t bstrSQL);
};
void ADOConn::OnInitADOConn()
{
::CoInitialize(NULL);
try
{
m_pCon.CreateInstance("ADODB.Connection");
_bstr_t strConnect="xxxxxxxxxxxx"; //连接字符串
m_pCon->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
}
void ADOConn::ExitConnect()
{
if (m_pRecordset!=NULL)
{
m_pRecordset->Close();
}
m_pCon->Close();
::CoUninitialize();
}
//执行SQL语句返回指向Recordset对象的指针
_RecordsetPtr& ADOConn::GetRecordSet(_bstr_t bstrSQL)
{
try
{
if(m_pCon==NULL)
OnInitADOConn();
m_pRecordset.CreateInstance(__uuidof(Recordset));
m_pRecordset->Open(bstrSQL,m_pCon.GetInterfacePtr(),
adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
e.Description();
}
return m_pRecordset;
}
BOOL ADOConn::ExecuteSQL(_bstr_t bstrSQL)
{
_variant_t RecordsAffected;
try
{
if(m_pCon==NULL)
OnInitADOConn();
m_pCon->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{
e.Description();
return false;
}
}
//连接字符串的一种获取方法:1.先到工程目录中的添加到工程中选择component and controls gallery,2.在弹出的对话框中选择registered activeX Controls 3.在打开的文件夹中选择microsoft ADO Data Control 6.0然后插入 4.将这个控件随便添加到窗口上,选择控件右击鼠标属性相中选择General标签 5.选择Use connection string,点击build选择你所要连接的数据库类型,按提示操作进行,测试连接成功之后在Use connection string这一项中将显示所要的连接字符串