VC++中使用ADO连接数据库step by step
2011-03-14 21:51
561 查看
Demo下载:
http://download.csdn.net/source/3090499
最近坛子里经常有人问起在VC++中ADO访问数据库的问题,有的要么是连接字符串不正确,要么是忘了COM的初始化,还有的根本就没有导入ADO动态库文件(msado15.dll,也有自定义的)。在此本人做了一个使用ADO访问数据库的演示demo,从最基础的使用MFC新建工程文件开始,一步步的完成数据库访问的搭建。
Step 1:
打开Microsoft
Visual C++ 6.0,File->New->Projects中选择”MFC AppWizard(exe)”,右边的project name输入工程文件夹的名称:ADOConnTest,Location选择要保存该工程文件夹的路径,其他默认,点”OK”,进入下一步。保持默认语言,type of application选择”Dialog
based”,点”Next”进入特性选择,把复选框的”√”都去掉,点”Next”,保持复选框的默认选项,继续”Next”->”Finish”->”OK”,至此,一个基本的MFC框架建立起来了。
Step 2:
搭建测试环境:将TODO所在的对话框去掉,放上一个按钮,在按钮上右键选择”Properties”,”Caption”的输入框中键入“数据库连接测试”,其他默认。
Step 3:
添加代码:
1)
导入msado15.dll动态库文件:
打开”StdAfx.h”,在代码的最后面添加:
ADO所有用到的MFC类都是在这里定义的。
2)
添加测试代码:
打开CADOConnTestDlg.cpp文件,定位到CADOConnTestDlg的OnConnection()方法(也可以双击”数据库连接测试”按钮直接进入),依次添加代码如下:
下面是测试连接的截图:
http://download.csdn.net/source/3090499
最近坛子里经常有人问起在VC++中ADO访问数据库的问题,有的要么是连接字符串不正确,要么是忘了COM的初始化,还有的根本就没有导入ADO动态库文件(msado15.dll,也有自定义的)。在此本人做了一个使用ADO访问数据库的演示demo,从最基础的使用MFC新建工程文件开始,一步步的完成数据库访问的搭建。
Step 1:
打开Microsoft
Visual C++ 6.0,File->New->Projects中选择”MFC AppWizard(exe)”,右边的project name输入工程文件夹的名称:ADOConnTest,Location选择要保存该工程文件夹的路径,其他默认,点”OK”,进入下一步。保持默认语言,type of application选择”Dialog
based”,点”Next”进入特性选择,把复选框的”√”都去掉,点”Next”,保持复选框的默认选项,继续”Next”->”Finish”->”OK”,至此,一个基本的MFC框架建立起来了。
Step 2:
搭建测试环境:将TODO所在的对话框去掉,放上一个按钮,在按钮上右键选择”Properties”,”Caption”的输入框中键入“数据库连接测试”,其他默认。
Step 3:
添加代码:
1)
导入msado15.dll动态库文件:
打开”StdAfx.h”,在代码的最后面添加:
#import "c:/program files/common files/system/ado/msado15.dll" / no_namespace / rename ("EOF", "adoEOF")
ADO所有用到的MFC类都是在这里定义的。
2)
添加测试代码:
打开CADOConnTestDlg.cpp文件,定位到CADOConnTestDlg的OnConnection()方法(也可以双击”数据库连接测试”按钮直接进入),依次添加代码如下:
//COM初始化 try { AfxOleInit(); } catch(_com_error & e) { AfxMessageBox("COM初始化失败!"); } //定义并初始化连接字符串,我这里测试的是Access数据库 _bstr_t ConnectionString(_T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D://SCO_DHIDCW3.mdb;Persist Security Info=False")); //定义连接指针,作为连接数据库的入口地址 _ConnectionPtr m_pConnection; //定义实例句柄,并创建连接实例 HRESULT hr; hr = m_pConnection.CreateInstance("ADODB.Connection"); //测试数据库是否连接成功 if(SUCCEEDED(hr)) { try { hr = m_pConnection->Open(ConnectionString, "", "", adModeUnknown); if(m_pConnection->State)//连接指针的状态,true表示连接成功,false表示失败 { AfxMessageBox("数据库连接成功!"); } else { AfxMessageBox("数据库连接失败!"); } } catch(_com_error & e) { AfxMessageBox(e.Description()); } } else { AfxMessageBox("CreateInstance失败!"); } //关闭数据库连接 if( m_pConnection->State) m_pConnection->Close();
下面是测试连接的截图:
相关文章推荐
- VC++中使用ADO连接数据库
- vc使用ado连接数据库WIN7平台问题
- VC用Ado接口连接和使用数据库及注意事项
- VC++中使用MFC通过ADO连接数据库
- VC++中使用ADO连接数据库
- 在vc中是使用ado连接数据库时,没有初始化COM导致错误
- VC++中使用MFC通过ADO连接数据库方法小结
- VC用Ado接口连接和使用数据库及注意事项
- 在VC下使用ADO连接数据库编程入门
- VC 使用ADO连接数据库的问题!error C2059: 语法错误 : “<L_TYPE_raw>” .
- VC++中使用ADO连接数据库
- VC++使用ADO连接数据库(SqlServe
- VC++中使用MFC通过ADO连接数据库方法小结(不包括异常的捕捉
- VC中用Ado接口代码连接和使用与数据库
- VC++中使用MFC通过ADO连接数据库
- VC 使用ADO连接数据库的问题!error C2059: 语法错误 : “”
- VC++中使用MFC通过ADO连接数据库方法小结
- 20160229 VC++中使用ADO连接数据库
- VC++ ado连接数据库(可以在VC6.0使用,以access数据库为实例)(1)
- VC中ADO连接数据库,如何使用Datagrid显示的问题