码迷,mamicode.com
首页 > 数据库 > 详细

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

时间:2014-09-19 08:51:25      阅读:310      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   io   os   ar   strong   文件   

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

2.打开VS2010/VS2012/VS2013

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

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

bubuko.com,布布扣

3.

bubuko.com,布布扣

4.

bubuko.com,布布扣

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类)

bubuko.com,布布扣

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

bubuko.com,布布扣

7.下面为ADOConn类添加代码

(1)先在StdAfx.h文件中添加代码,导入ADO库

#ifndef _AFX_NO_AFXCMN_SUPPORT
#include <afxcmn.h>             // 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连接数据库大致就可以成功了。






















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

标签:style   blog   http   color   io   os   ar   strong   文件   

原文地址:http://blog.csdn.net/u012388338/article/details/39393105

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!