初始化:

1.找到"stdafx.h"文件,并添加代码:

#import "C:\WINDOWS\system32\msado15.dll" \
 no_namespace \
 rename ("EOF", "adoEOF")

 解释:"EOF"-"End Of Line"即是否为数据库的最后一行。

2.在"Dlg.h"文件中进行对象定义:

public:
  _ConnectionPtr m_Connection; //连接数据库
  _RecordsetPtr m_pRecordset;  //记录集

解释:

“m_Connection”负责数据库连接的操作,以及使用m_Connection.Execute()等操作;

“m_pRecordset”负责进行数据集的绑定,一般使用为m_pRecordset.Open()等操作;

3.在"Dlg.cpp"找到"OnInitDialog()"函数,并添加代码如下:

SetIcon(m_hIcon, FALSE);  // 设置小图标
///数据库初始化部分
  ::CoInitialize(NULL);    //初始化COM环境,只在对话框建立的时候才进行
  HRESULT hr;
  try
  {
   hr = m_Connection.CreateInstance("ADODB.Connection");  //初始化Connection对象实例,不随时释放
   if(SUCCEEDED(hr))
   {
    hr = m_Connection->Open(L"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=MyDBAccess.mdb",L"",L"",adModeUnknown);
   }
   m_pRecordset.CreateInstance("ADODB.Recordset");  //初始化对象数据集,不随时释放 m_pRecordset->Open("SELECT * FROM 雇员",m_Connection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);  //随时可以使用m_pRecordset->Close()进行关闭
  }
  catch(_com_error &e)
  { 
   CString errormessage;
   errormessage.Format("连接数据库失败!\r\n错误信息:%s",e.ErrorMessage());
   AfxMessageBox(errormessage);///显示错误信息
  }

解释: 

::CoInitialize(NULL);  -- 进行COM口的初始化,非常重要的一步;

 --实例化"连接";      

                       

   --实例化"数据集";   


4.在"WM_CLOSE"对应的"OnClose()"函数中进行"释放"操作:

m_pRecordset->Close();
m_Connection->Close();
::CoUninitialize(); //关闭COM环境

CDialog::OnClose();

解释:

 

到此为止,整个的初始化部分就完成了,下面就带大家进入下面一个部分,ADO的处理.