(1)首先拷贝 c:program filescommon filessystemado 目录中的 msado15.dll 文件到项目中。
(2)在VC中加入DLL,具体方法如下:
(3)创建连接对象,和打开数据库的具体代码如下:
void CMyDlg::OnButton1()
{
// TODO: Add your control notification handler code here
if (AfxOleInit())//初始化OLE
{
_ConnectionPtr m_pConnection;//声明一个连接对象
_RecordsetPtr m_pRecordset;
HRESULT hr;
try{
hr = m_pConnection.CreateInstance("ADODB.Connection"); //创建连接
if(SUCCEEDED(hr))//判断是否连接成功
{
MessageBox("指针连接成功!");
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db1.mdb","","",adModeUnknown);//打开数据库
_variant_t RecordsAffected;//声明返回被修改的条目数
CString strSQL;//SQL字符串语句
strSQL.Format("insert into d1(name) values('%s')","正月龙");
m_pRecordset = m_pConnection->Execute((_bstr_t)strSQL,&RecordsAffected,adCmdText);//操作数据库
MessageBox("数据加入成功!");
//m_pRecordset->Close();
m_pRecordset = m_pConnection->Execute("select count(*) from d1",&RecordsAffected,adCmdText);//返回总条目数
_variant_t vIndex = (long)0;
_variant_t vCount = m_pRecordset->GetCollect(vIndex);//取得第一个字段的整数值放入vCount变量
CString str;
str.Format("总共有%d条数据",vCount.lVal);
MessageBox(str);
m_pRecordset = m_pConnection->Execute("select * from d1",&RecordsAffected,adCmdText);
//m_pRecordset->MoveNext();
//m_pRecordset->MoveNext();
_variant_t vIndex1 = (long)0;
_variant_t vCount1 = m_pRecordset->GetCollect(vIndex1);//取得第一个字段的字符串值放入vCount1变量
CString str1;
str1 = vCount1.bstrVal;
MessageBox("第一个字段内容是:"+str1);
m_pRecordset->Close();
}
}catch(_com_error e)
{
CString str;
str.Format("数据库连接失败
错误信息:%s",e.ErrorMessage());
MessageBox(str);
}
//MessageBox("初始化 OLE 成功!");
}else
MessageBox("初始化 OLE 失败");
}