前言:最基本的要记得在相应文件夹中刚加入相应的头文件
一、在StdAfx.h中加入这句话: #import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","adoEOF")
二、在BOOL CMyApp::InitInstance()添加函数初始化函数
即:
BOOL CMyApp::InitInstance()
{
AfxEnableControlContainer();
AfxOleInit();
}
三、建立DataBase.h 和 DataBase.cpp
1、在DataBase.h中加入以下代码
#if !defined(AFX_DATABASE_H__103A370D_E1E8_4329_87C6_D6F21799ACC1__INCLUDED_)
#define AFX_DATABASE_H__103A370D_E1E8_4329_87C6_D6F21799ACC1__INCLUDED_
#endif
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
class CAdoConnection
{
public:
CAdoConnection();
virtual ~CAdoConnection();
void OnInitADOConn();//连接数据库
BOOL ExecuteSQL(_bstr_t bstrSQL);//执行Insert UpDate Delete
_RecordsetPtr & GetRecordSet(_bstr_t bstrSQL);//执行查询
private:
_ConnectionPtr m_pConnection;//添加一个指向Connection对象的指针
_RecordsetPtr m_pRecordset;//添加一个指向RecordSet对象的指针
};
2、在DataBase.cpp中添加下列代码
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//类的实现
CAdoConnection::CAdoConnection()
{
::CoInitialize(NULL); //初始化OLE/COM库环境
}
CAdoConnection::~CAdoConnection()
{
//关闭记录集和连接
if(m_pRecordset != NULL)
m_pRecordset->Close();
m_pConnection->Close();
::CoUninitialize(); //释放程序占用的COM资源
}
void CAdoConnection::OnInitADOConn()// 连接数据库
{
try
{
m_pConnection.CreateInstance("ADODB.Connection");//创建Connection 对象
_bstr_t strConnect = "driver={SQL Server};Server=(local);DATABASE=你要用的数据库名;UID=数据库的登录用户(比如sa);PWD=数据库登录密码;";
m_pConnection->Open(strConnect,"","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(e.Description());//显示错误信息
}
}
BOOL CAdoConnection::ExecuteSQL(_bstr_t bstrSQL)//执行Insert UpDate
{
try
{
//是否已经连接到数据库
if(m_pConnection == NULL)
OnInitADOConn();
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
return false;
}
}
_RecordsetPtr& CAdoConnection::GetRecordSet(_bstr_t bstrSQL)//执行查询
{
try
{
//连接数据库 如果Connection对象为空则重新连接数据库
if(m_pConnection==NULL)
OnInitADOConn();
//创建记录集对象
m_pRecordset.CreateInstance(__uuidof(Recordset));
//取得表中的记录
m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfacePtr(),adOpenDynamic,adLockBatchOptimistic,adCmdText);
}
catch (_com_error e)
{
//异常 显示错误信息
AfxMessageBox(e.Description());
}
return m_pRecordset;
}
四、以上步骤完成后可能会提示你缺少相应的库文件( ***.lib文件),按一下步骤进行添加
在VC6.0菜单栏的 工程(project)==》增加到工程(Add to project)==》文件(file)==》选择你VC安装目录的VC98文件夹的Lib文件夹添加相应的库文件(比如我的是:H:\VC98\Lib)
好了,以上步骤走完后,SQL server 2005 就可以连接使用啦,祝你成功!