文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>MFC通过ADO连接MS SQLSERVER数据库

MFC通过ADO连接MS SQLSERVER数据库

时间:2011-01-29  来源:风清月明

1.首先是引入msado15.dll。

在StdAfx.h中加入:

#import "C:\Program Files\Common Files\System\ado\msado15.dll" \
no_namespace rename(
"EOF","adoEOF")

 

2.初始化COM。

在SuperManDlg.cpp文件的OnInitDialog函数中加上:

AfxOleInit();

3.建立连接的函数,可以单独放在SQLHelper类中(专门处理数据库操作的函数)。

//打开连接
_ConnectionPtr SqlHelper::getConnection()
{
        _ConnectionPtr m_pConnection;
        //连接字符串
        try
        {
                m_pConnection.CreateInstance("ADODB.Connection");
                HRESULT rs;
                CString connectionStr="Driver={SQL Server};Server=(local);Database=db_superMarket;UID=sa;PWD=***";
                rs=m_pConnection->Open((_bstr_t)connectionStr,"","",adModeUnknown);
                if(rs)
                {
                        AfxMessageBox("连接失败!");
                }
    }
        catch(_com_error e)
        {
                AfxMessageBox(e.ErrorMessage());
        }
        return m_pConnection;
}

4.关闭连接的函数:

//关闭链接
void SqlHelper::closeConnection(_ConnectionPtr conn)
{
        if(conn!=NULL)
                conn->Close();
}

5.进行查询的函数

 

代码
//获得记录数
int SqlHelper::GetRecord(CString sql)
{
int num=0;
_ConnectionPtr m_pConnection
=getConnection();
_RecordsetPtr m_pRecordSet
=NULL;
m_pRecordSet.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordSet
->Open((_bstr_t)sql,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
if(m_pRecordSet!=NULL)
{
while(!(m_pRecordSet->adoEOF))
{
num
++;
m_pRecordSet
->MoveNext();
}
}
if(m_pRecordSet!=NULL)
{
m_pRecordSet
->Close();
}
closeConnection(m_pConnection);
return num;
}

 

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载