| 
 一、新建工程access数据库,基本对话框。 
二、添加类 
  
Class Type:Generic Class  
Name: CADOConn 
  
三、在ADOConn.h中加 
。。。。。。。。。。。。。。。 
#define AFX_ADOCONN_H__15D0A1C8_EEF1_419C_A48B_A08BF8F60FD6__INCLUDED_ 
#import "c:\Program Files\Common Files\System\ado\msado15.dll"no_namespace \ 
rename("EOF","adoEOF")rename("BOF","adoBOF") 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
class CADOConn   
{ 
public: 
         CADOConn(); 
         virtual ~CADOConn(); 
         //添加一个指向Connection对象的指针 
         _ConnectionPtr m_pConnection; 
         //添加一个指向Recordset对象的指针 
         _RecordsetPtr m_pRecordset; 
}; 
#endif // !defined(AFX_ADOCONN_H__15D0A1C8_EEF1_419C_A48B_A08BF8F60FD6__INCLUDED_) 
四、在类CADOConn中加成员函数 
  
Function Type:void 
Function Declaration:OnInitADOConn() 
Access:Public 
  
五、加入代码 
void CADOConn::OnInitADOConn() 
{ 
         //初始化OLE/COM库环境 
    ::CoInitialize(NULL); 
         try 
         { 
                   //创建connection对象 
                   m_pConnection.CreateInstance("ADODB.Connection");      
                   //设置连接字符串 
                   _bstr_t strConnect="uid=;pwd=;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=database.mdb;"; 
                   //SERVER和UID,PWD的设置根据实际情况来设置 
                   m_pConnection->Open(strConnect,"","",adModeUnknown); 
         } 
         //捕捉异常 
         catch(_com_error e) 
         { 
                   //显示错误信息 
                   AfxMessageBox(e.Description()); 
         } 
} 
六、类CADOConn中加成员函数 
Function Type:void 
Function Declaration:ExitConnect() 
Access:Public 
七、加入代码 
void CADOConn::ExitConnect() 
{ 
         //关闭记录集和连接 
    if(m_pRecordset!=NULL) 
                   m_pRecordset->Close(); 
         m_pConnection->Close(); 
         //释放环境 
         ::CoUninitialize(); 
} 
八、加成员函数同时加入代码 
Function Type:_RecordsetPtr& 
Function Declaration:GetRecordSet(_bstr_t bstrSQL) 
Access:Public 
  
_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) 
         { 
                   e.Description(); 
         } 
         return m_pRecordset; 
} 
九、加入一个二个编辑框ID:IDC_EDIT1和ID:IDC_EDIT2 
十、access数据库Dlg.cpp加入#include "ADOConn.h" 
十一、在OnInitDialog()中加入代码 
。。。。。。。。。。。。。。。。。。。。。。。。。 
    CADOConn m_AdoConn; 
    m_AdoConn.OnInitADOConn(); 
    CString sql; 
    CString x,y; 
    sql = "select * from cqkind";  
    _RecordsetPtr m_pRecordset; 
    m_pRecordset = m_AdoConn.GetRecordSet((_bstr_t)sql); 
    _variant_t var,var1,varIndex; 
    var = m_pRecordset->GetCollect("dy");    
    var1 = m_pRecordset->GetCollect("BigClassName");     
    x = (LPCSTR)_bstr_t(var); 
    y = (LPCSTR)_bstr_t(var1); 
    SetDlgItemText(IDC_EDIT1,x); 
    SetDlgItemText(IDC_EDIT2,y); 
         return TRUE;  // return TRUE  unless you set the focus to a control 
} 
  
 |