VC++ 使用msado15.dll ADO数据库控件

在StdAfx.h中加入如下语句:(调用ADO控件)
#import "C:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF","adoEOF") rename("BOF","adoBOF")
-----------------------------------------------------
初始化数据库:*
::CoInitialize(NULL);
    try{
  
  m_pConnection.CreateInstance("ADODB.Connection");//创建一ADODB的连接
    _bstr_t str=m_sqlstr;//数据库连接字符串
        m_pConnection->ConnectionTimeout=5;    //响应时间
        m_pConnection->Open(str,"","",adModeUnknown);//打开ADO
        m_pConnection->Close();
 
 }
 catch(_com_error e)
 {
     AfxMessageBox("连接数据库出错!");
 
 }
----------------------------------------------------------
数据库操作举例:    m_pConnection _RecordsetPtr类的使用
void CCjtj::Cxsjk(CString s0, CString s1, CString s2, CString s3)
{
    CString s; long i; char c[10];
    memset(c,0,10);
 m_pConnection.CreateInstance("ADODB.Connection");
    _bstr_t str="Provider=SQLOLEDB;Server=CB;Database=VSAT;uid=sa;pwd=sasa;";  //联接SQL数据库字符串的值
        m_pConnection->ConnectionTimeout=20;       //响应时间
        m_pConnection->Open(str,"","",adModeUnknown);    //打开
        _RecordsetPtr m_pRecordset;            //创建记录指针
        _variant_t RecordsAffected;            
 
 
        s="SELECT COUNT(*) FROM "+s3;          //s3为数据库表名
        m_pRecordset =m_pConnection->Execute((_bstr_t) s,&RecordsAffected,adCmdText);
        _variant_t vIndex = (long)0;
        _variant_t vCount = m_pRecordset->GetCollect(vIndex);
        i=vCount.lVal;        //获得记录的值
 
        m_text="‘"+m_rwzl+"‘:共计:"+ltoa(i,c,10)+"条。";     //将记录值i转换成字符串并显示
 
m_jg=m_jg+m_text+"\r\n";              //并显示
textline++;                       //累计行
UpdateData(false);               //刷新
m_jgc.LineScroll(textline,0);  //滚动
 
m_pRecordset->Close();     //关闭数据库
m_pConnection->Close();
}
--------------------------------------------------------
以上再配合MS ADO CONTROL控件,就可以很好地操作数据库.    注*可以用于判断数据库是否正常

VC++ 使用msado15.dll ADO数据库控件,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。