100分求MFC连接数据库(sql2000)代码! 本人是搞C#的!最近公司要我C++,本人不懂C++,对C++了解一片空白!求一个简单、易懂、最好有注释的代码MFC连接数据库的代码!分不够,我在再加! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 通过ADO操作Access数据库http://www.vckbase.com/document/viewdoc/?id=496 最好能把.h和.cpp文件!分的清楚一点!在MFC界面调用! 在MFC中,主要有两种方法可以连接sql数据库1.利用ADO连接:#import "msado15.dll" no_namespace rename("EOF", "EndOfFile") //必须import这个dll,这个文件通常放在C:\Program Files\Common Files\System\ado路径下._ConnectionPtr m_ptrConnection; //数据库连接对象构造函数中添加如下语句m_ptrConnection = NULL; ::CoInitialize(NULL); //连接数据库的主要代码BOOL DataVisitor::ConnectDataBase(_bstr_t connectionStr){ /* Added by stone. If IDOConnection has not been set up,then create one. */ if(m_ptrConnection == NULL) { HRESULT hr = m_ptrConnection.CreateInstance(__uuidof(Connection)); if (FAILED(hr)) { return FALSE; } else { _bstr_t strConnect = connectionStr; //"Provider=SQLOLEDB;Server=(local);Database=navigation; uid=sa; pwd=3277625;"; m_ptrConnection->CursorLocation = adUseClient; m_ptrConnection->IsolationLevel = adXactReadCommitted; try { m_ptrConnection->Open(strConnect,"","",adModeUnknown); return TRUE; } catch (_com_error e) { // AfxMessageBox((char *)e.Description()); return FALSE; } } } return TRUE;}2. 利用ODBC连接#include <afxdao.h>CDaoDatabase *MyDataBase;BOOL MyDB_OperSqL::Open_MyDatabase(CString connstr) { try { if (MyDataBase == NULL) { MyDataBase = new CDaoDatabase(); } MyDataBase->Open(NULL,0,0,connstr); } catch( CDaoException* e ) { CString message = _T("MyDB_OperSqL 数据库异常: "); message += e->m_pErrorInfo->m_strDescription; char info[400]; sprintf(info,message); DispErrorMessage(info,__LINE__); e->Delete( ); return FALSE; } catch (CMemoryException *e) { DispErrorMessage("MyDB_OperSqL 内存异常!",__LINE__); e->Delete( ); return FALSE; } catch(...) { DispErrorMessage("MyDB_OperSqL 其它异常!",__LINE__); return FALSE; } return TRUE;}这里的连接字符串connstr一般是如下内容"ODBC;DRIVER={SQL Server};SERVER=(local);DATABASE=yourDataBase;UID=yourID;PWD=yourPassword"出处:http://www.cnblogs.com/ost/archive/2007/03/20/680680.html 对C++一点都了解!这和C#差别好大的!真的不会用!这些代码我直接复制在一个CPP文件,好像有错~该怎么用!我的是vs.2005开发平台! 建议楼主还是需要先了解MFC我这有关于ADO技术的实例,但数据库连接的是Access,楼主需要的话可以给我发邮件[email protected] 《ADO开发指南》一看就明白~ http://blog.sina.com.cn/s/blog_4def2d3d01000diw.htmlVC++中使用MFC通过ADO连接数据库方法小结 MFC的一个小问题 如何 把一个窗口的主题设置成为经典样式?? CSocket的OnReceive函数什么时候被调用? 请教如何判断组合框里的哪项被选中啦? flash如何播放?急,在线等!(分可另加) 小问题碰到大麻烦,请教各大门派高手! MFC中WebBrowser控件加载html 请问这段语句有什么问题? 请问哪个网站有程序图标和程序中使用的小图标下载? (以身相许) 寻找软件自动化测试高手....... @#$ VS2003无法调试:unable start to debugging. 救命啊,各位大虾,在CWnd对象下的某个CRect对象里怎样绘画啊?
http://www.vckbase.com/document/viewdoc/?id=496
1.利用ADO连接:
#import "msado15.dll" no_namespace rename("EOF", "EndOfFile")
//必须import这个dll,这个文件通常放在C:\Program Files\Common Files\System\ado路径下.
_ConnectionPtr m_ptrConnection; //数据库连接对象
构造函数中添加如下语句
m_ptrConnection = NULL;
::CoInitialize(NULL);
//连接数据库的主要代码
BOOL DataVisitor::ConnectDataBase(_bstr_t connectionStr)
{
/*
Added by stone. If IDOConnection has not been set up,then create one.
*/
if(m_ptrConnection == NULL)
{
HRESULT hr = m_ptrConnection.CreateInstance(__uuidof(Connection));
if (FAILED(hr))
{
return FALSE;
}
else
{
_bstr_t strConnect = connectionStr;
//"Provider=SQLOLEDB;Server=(local);Database=navigation; uid=sa; pwd=3277625;"; m_ptrConnection->CursorLocation = adUseClient;
m_ptrConnection->IsolationLevel = adXactReadCommitted;
try
{
m_ptrConnection->Open(strConnect,"","",adModeUnknown);
return TRUE;
}
catch (_com_error e)
{
// AfxMessageBox((char *)e.Description());
return FALSE;
}
}
}
return TRUE;
}
2. 利用ODBC连接
#include <afxdao.h>
CDaoDatabase *MyDataBase;BOOL MyDB_OperSqL::Open_MyDatabase(CString connstr)
{
try
{
if (MyDataBase == NULL)
{
MyDataBase = new CDaoDatabase();
}
MyDataBase->Open(NULL,0,0,connstr); }
catch( CDaoException* e )
{
CString message = _T("MyDB_OperSqL 数据库异常: ");
message += e->m_pErrorInfo->m_strDescription;
char info[400];
sprintf(info,message);
DispErrorMessage(info,__LINE__);
e->Delete( );
return FALSE;
}
catch (CMemoryException *e)
{
DispErrorMessage("MyDB_OperSqL 内存异常!",__LINE__);
e->Delete( );
return FALSE;
}
catch(...)
{
DispErrorMessage("MyDB_OperSqL 其它异常!",__LINE__);
return FALSE;
}
return TRUE;
}
这里的连接字符串connstr一般是如下内容
"ODBC;DRIVER={SQL Server};SERVER=(local);DATABASE=yourDataBase;UID=yourID;PWD=yourPassword"出处:http://www.cnblogs.com/ost/archive/2007/03/20/680680.html
对C++一点都了解!这和C#差别好大的!
真的不会用!这些代码我直接复制在一个CPP文件,好像有错~
该怎么用!
我的是vs.2005开发平台!
我这有关于ADO技术的实例,但数据库连接的是Access,楼主需要的话可以给我发邮件[email protected]
一看就明白~
VC++中使用MFC通过ADO连接数据库方法小结