欢迎来到天天文库
浏览记录
ID:37712351
大小:48.50 KB
页数:6页
时间:2019-05-29
《MFC中用ado访问SQL Server 2005数据库》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、MFC中用ado访问SQLServer2005数据库今天老大交代项目,需要MFC访问另一台机器上的SQLServer2005数据库。MFC我不熟,SQL也从没用过。在网上查了不少资料,忙了一阵终于搞通了。与各位朋友分享一下,高手们就不用看了,这是写给像我一样初学者的。一、安装SQLSERVER2005,在本机建立服务器默认安装即可,也可以自己另起名字,安装时可以选择身份验证方式,有“SQLSERVER身份验证”与“windows身份验证”两种方式。我安装时默认“windows身份验证”,安装完毕建立数据库后改为“SQLSERVER身份验证”。二、安
2、装MicrosoftSQLServerManagementStudioExpress,一路默认即可。三、我们先在本机建立个数据库,成功访问后再访问访问网络上别人的数据库。1.打开MicrosoftSQLServerManagementStudioExpress。比如我的机器名是wulong,那么显示为wulongSQLEXPRESS直接点“连接”。2.登陆后鼠标右键点击数据库——》新建数据库,命名为haitest点击确定。3.建立数据库成功后,展开haitest鼠标右键点“表”——》“新建表”输入你定义的标题,比如“名字”“编号”“年龄”“性别”
3、。命名为haiTble4.5.建立表成功后,在目录“数据库”——》“haitest”——》“表”可以看到你刚建立的表dbo.haiTable,鼠标右键打开表输入内容。6.保存,你的表做好了。四、数据库建立好了,下面我们写程序访问你的数据库中的表haiTable:1.MFC建立个对话框工程。2.在工程的stdafx.h文件中添加ADO的链接库#import"C:ProgramFilesCommonFilesSystemadomsado15.dll"no_namespacerename("EOF","adoEOF")rename("BOF",
4、"adoBOF")3.ado操作数据库需要三个句柄,ConnectionPtr用于连接数据库用,RecordsetPtr用于访问表中记录用。有这两个句柄就可以修改数据库记录了,还有个命令句柄,我们这里不介绍了。在你的程序中定义两个句柄。//ChaiwindowDlg对话框classChaiwindowDlg:publicCDialog{…………………………….//---------------------定义访问数据库的句柄_ConnectionPtrm_pConnection;_RecordsetPtrm_pRecordset;//-------
5、----------------------定义句柄完成}4.对话框初始化中添加ADO的初始化,打开数据库。BOOLChaiwindowDlg::OnInitDialog(){…………………………//------------------添加的初始化代码if(!AfxOleInit())//这就是初始化COM库{AfxMessageBox("KE初始化出错!");}try{m_pConnection.CreateInstance(__uuidof(Connection));m_pConnection->Open((_bstr_t)"Driver={S
6、QLServer};Server=192.168.1.214\SQLEXPRESS;Database=haitest","","",adModeUnknown);//或者写成//m_pConnection->Open((_bstr_t)"Driver={SQLServer};Server=wulong\SQLEXPRESS;Database=haitest","","",adModeUnknown);//m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=Demo.m
7、db","","",adModeUnknown);}catch(_com_errore){AfxMessageBox(e.Description());}//----------------------添加初始化代码结束………………………….}注意wulong\SQLEXPRESS是双斜线啊,写错了就会返回[Microsoft][ODBCSQLServerDriver][DBNETLIB]SQLServer不存在或访问被拒绝。5.下面打开表我们刚建立的表名字是haiTable:try{m_pRecordset.CreateInstance(__u
8、uidof(Recordset));m_pRecordset->Open("SELECT*FROMhaiTable",//
此文档下载收益归作者所有