您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

vc如何通过ADO操作Access数据库?

2024/3/27 0:32:21发布245次查看
数据库 的应用在应用程序中有不可缺少的作用,今天就讲解在vc下 如何 通过 ado 操作 access 数据库 。 首先引入ado库的定义文件,引用msado15.dll,这个文件在系统安装盘的program files\common files\system\ado文件夹下,只需将以下代码: #import c:\prog
数据库的应用在应用程序中有不可缺少的作用,今天就讲解在vc下如何通过ado操作access数据库。
首先引入ado库的定义文件,引用msado15.dll,这个文件在系统安装盘的program files\common files\system\ado文件夹下,只需将以下代码:
#import “c:\program files\common files\system\ado\msado15.dll” \
 no_namespace \
 rename (“eof”, “adoeof”)
添加到stdafx.h下便可。 www.2cto.com
再次,便是初始化com库,这个步骤通常在初始化窗口时实现,代码如下:
afxoleinit();
第三步便是利用建立好的连接通过connection、command对象执行sql命令,或利用recordset对象取得结果记录集进行查询、处理等。
// 定义ado连接、命令、记录集变量指针
 _connectionptr m_pconnection;
 _commandptr  m_pcommand;
 _recordsetptr m_precordset;
以数据库demo.mdb为例,以下代码初始化各指针:
m_pconnection.createinstance(__uuidof(connection));// 初始化com,创建ado连接等操作
 try               
 {
  // 打开本地access库demo.mdb
  m_pconnection->open(“provider=microsoft.jet.oledb.4.0;data source=demo.mdb”,”,”,admodeunknown);
 }
 catch(_com_error e)
 {
  afxmessagebox(“数据库连接失败,确认数据库demo.mdb是否在当前路径下!”);
  return false;
 }
m_precordset.createinstance(__uuidof(recordset));// 使用ado创建数据库记录集
  // 在ado操作中建议语句中要常用try…catch()来捕获错误信息,
 // 因为它有时会经常出现一些想不到的错误。
 try
 {
  m_precordset->open(“select * from demotable”,    // 查询demotable表中所有字段
       m_pconnection.getinterfaceptr(),  // 获取库接库的idispatch指针
       adopendynamic,
       adlockoptimistic,
       adcmdtext);
 }
 catch(_com_error *e)
 {
  afxmessagebox(e->errormessage());
 }
其次便可进行查询、修改、删除等操作了。
请关注   李木空间  www.limou.net   更多mfc知识。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product