VC++下ADO连接ACCESS

原创 2008年10月13日 20:48:00

        最近要做个数据管理系统,要求用MFC实现。一直以来都是习惯了ADO.NET,换了这个真的很不习惯..........下面说说连接的步骤。

        在StdAfx.h加入:#import "c:/Program Files/Common Files/System/ado/msado15.dll" no_namespace rename("EOF","rsEOF")
具体路径因你机子系统而异。

        然后初始化并创建一个连接对象喝一个数据记录对象

CoInitialize(NULL);
_ConnectionPtr pConn(__uuidof(Connection));
_RecordsetPtr pRst(__uuidof(Recordset));

       下面是数据库的地址,我放在了工程的文件夹下。话说我一开始是放在了DEBUG下,编译通过,运行却出错。搞了我老半天,郁闷。路径可以直接写info.mdb,不过必须把MDB放到DEBUG文件夹下,而且手动运行DEBUG里面的EXE程序,否则也错,残念...........

char path[ MAX_PATH ] = { '/0' };
CString DataSource="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=";
GetCurrentDirectory( MAX_PATH, path );
CString pathstr;
pathstr.Format("%s",path);
DataSource +=pathstr;
DataSource += "//info.mdb";
DataSource +=";Persist Security Info=False";

        下面打开连接
pConn->ConnectionString=(_bstr_t)DataSource;
pConn->Open("","","",adConnectUnspecified);

        接着进行查询看看。这里我在对话框上添加了两个文本框并分别添加变量m_no和m_name,一个输入编号 一个显示姓名。

CString strSQL,strtem;
strSQL.Format("select * from Users where UserId=%s",m_no);

pRst=pConn->Execute((_bstr_t)strSQL,NULL,adCmdText);

while(!pRst->rsEOF)
{
    strtem.Format((_bstr_t)pRst->GetCollect("UserName"));
    m_name=strtem;
    pRst->MoveNext();
}

最后关闭

pRst->Close();
pConn->Close();
pRst.Release();
pConn.Release();
CoUninitialize();

 

要记得在执行这些代码前加入UpdateData(TRUE);后面显示出来再UpdateData(FALSE);

解释:

UpdateData(true);//用于将屏幕上控件中的数据交换到变量中。
UpdateData(false);//用于将数据在屏幕中对应控件中显示出来

VC++ ado连接数据库(可以在VC6.0使用,以access数据库为实例)(1)

很多新手对数据库连接迷茫了,怎么我写的就
  • bojie5744
  • bojie5744
  • 2014年06月11日 16:50
  • 1574

x64 win64编译环境下ADO链接Access数据库的问题解决

Win32编译环境下,用ADO数据库连接Access数据库一般都不会报错,但是最近由于项目上的需要,程序需要编译成64位以便申请到更多的使用内存空间,当把编译方式从Win32改为x64的时候,突然出现...
  • HW140701
  • HW140701
  • 2017年05月02日 10:00
  • 1636

VS2015在MFC中使用ADO方法连接Access2013数据库

言归正传,第一个面临的难题就是建一个基于对话框的MFC工程连接到之前已经做好的数据库。首先创建一个基于对话框的MFC应用程序ADO_Access.sln.然后...
  • hu2703411
  • hu2703411
  • 2015年10月30日 21:27
  • 3511

配置数据源,VC++ ADO连接ACCESS详解

所谓有图有真相,兄弟们都公务繁忙,懒得去看文字,看图最实惠,使用数据库必须配置数据源,转个帖子方便参阅~   第一、配置数据源 控制面板 -> 管理工具 ->数据源(ODBC)   ...
  • CallMeZane
  • CallMeZane
  • 2011年12月13日 14:39
  • 1873

VC++ ado连接数据库(可以在VC6.0使用,以access数据库为实例)(1)

很多新手对数据库连接迷茫了,怎么我写的就
  • bojie5744
  • bojie5744
  • 2014年06月11日 16:50
  • 1574

vc++中用ADO连接access数据库

  • 2010年09月07日 10:17
  • 3.94MB
  • 下载

VC++中使用ADO访问SQL Server数据库与Access数据库的不同之处总结

最近调试一个VC++ Access数据库迁移到SQL Server平台的项目,遇到了一些问题,经过几天努力,通过论坛发帖子和资料查找,最后终于找到了问题所在,并顺利解决了问题,下面是一些总结,希望对碰...
  • zxhx
  • zxhx
  • 2011年03月04日 22:47
  • 2181

VC++下使用ADO访问Access数据库完整篇

1、在StdAfx.h中引入ADO类支持 方法是在StdAfx.h中增加下面两句话: #include //如果需要则添加本句 #import "c:\program files\common ...
  • chw1989
  • chw1989
  • 2012年03月18日 11:46
  • 795

VC++中使用ADO方式操作ACCESS数据库

VC++中使用ADO方式操作ACCESS数据库 浏览: 2162 | 更新: 2011-04-09 14:24 | 标签: vc++ 6 4 全...
  • gsls181711
  • gsls181711
  • 2013年11月04日 17:23
  • 1010

VS2008(VC++)使用Ado读取SQL Server和Access数据库

.创建一个对话框工程 在stdafx.h文件中加入下面一句话引用 #import "C://Program Files//Common Files//System//ado//msado1...
  • zsk0514
  • zsk0514
  • 2016年10月22日 16:51
  • 409
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VC++下ADO连接ACCESS
举报原因:
原因补充:

(最多只允许输入30个字)