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

WBOY
풀어 주다: 2016-06-07 15:04:26
원래의
1251명이 탐색했습니다.

数据库 的应用在应用程序中有不可缺少的作用,今天就讲解在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知识。

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿