VS2010连接数据库的操作(SQLServer2005/2008以及Access2007/2003等)

来源:IT165收集  发布日期:2014-09-19 20:35:33

1.首先建立一个数据库文件

2.打开VS2010/VS2012/VS2013

3.建立一个工程名字叫做***

4.看到状态栏:工具->连接到数据库


3.


4.


5.点击高级,把DataSource的内容和Provider的内容复制到 _bstr_t strConnect ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/graduation project/HouseRealty/Limite.mdb;Persist Security Info=False";//access2007(添加过ADO类的前提下,下面会讲到怎么添加ADO类)


6.添加ADO类,项目->添加类(添加C++类,不是基于MFC的类),名字叫做CADOConn

MFC 对 Windows 公共控件的支持
#import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF","adoEOF")rename("BOF","adoBOF")
#endif // _AFX_NO_AFXCMN_SUPPORT
#include <afxcontrolbars.h> // 功能区和控件条的 MFC 支持
#endif
#endif
(2)在ADOConn.h文件中添加:

class CADOConn
{
public:
CADOConn(void);
~CADOConn(void);
_RecordsetPtr m_pRecordset;//记录集指针
_ConnectionPtr m_pConnection;
void OnInitADOConn();//连接数据源
_RecordsetPtr& GetRecordset(_bstr_t bstrSQL);//获取打开的记录集指针
BOOL ExecuteSQL(_bstr_t bstrSQL);//执行SQL语句
void ExitConnect();//断开数据连接
};

(3)在ADOConn.cpp中添加

#include "StdAfx.h"
#include "ADOConn.h"




CADOConn::CADOConn(void)
{
}




CADOConn::~CADOConn(void)
{
}
void CADOConn::OnInitADOConn()
{
::CoInitialize(NULL);
try
{
m_pConnection.CreateInstance("ADODB.Connection");
// _bstr_t strConnect="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Limite.mdb";//.mdb放在工程目录下 access2003
_bstr_t strConnect ="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/graduation project/HouseRealty/Limite.mdb;Persist Security Info=False";//access2007
m_pConnection->Open(strConnect,"","",adModeUnknown);

// AfxMessageBox("数据库连接成功");
}
catch(_com_error e)
{
AfxMessageBox("连接失败");
}


}
void CADOConn::ExitConnect()
{
if(m_pRecordset!=NULL)//关闭记录集和断开数据源链接
m_pConnection->Close();
::CoUninitialize();//释放COM环境

}
_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)
{
AfxMessageBox("记楼盘数据打开失败");
}
return m_pRecordset;

}
BOOL CADOConn::ExecuteSQL(_bstr_t bstrSQL)
{
try
{
if(m_pConnection==NULL)
OnInitADOConn();
m_pConnection->Execute(bstrSQL,NULL,adCmdText);
return true;
}
catch (_com_error e)
{
AfxMessageBox("不能打开楼盘数据");
return false;
}
}

8.经过以上步骤,VS连接数据库大致就可以成功了。



Tag标签: 数据库  
  • 专题推荐

About IT165 - 广告服务 - 隐私声明 - 版权申明 - 免责条款 - 网站地图 - 网友投稿 - 联系方式
本站内容来自于互联网,仅供用于网络技术学习,学习中请遵循相关法律法规