利用ado压缩数据库(vc源代码)

原创 2004年04月07日 16:50:00
 

HOWTO: Compacting Microsoft Access Database Through OLE DB<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

http://support.microsoft.com/default.aspx?scid=kb;EN-US;230496

 

SUMMARY

OLE DB specification doesn't provide interfaces to compact or repair databases. However, the OLE DB Provider for Microsoft Jet version 4.0 exposes this functionality through a custom interface: IJetCompact (TDataSource cotype). IJetCompact is defined in the header file Jetoledb.h that can be obtained separately from Microsoft (Please see knowledge base article Q228525).

MORE INFORMATION

To repair and compact a Microsoft Access database using OLE DB, MDAC 2.1 or higher version must be properly installed on the computer. The following steps are required:

1.         Create and initialize the data source objects by using interfaces of IDBInitialize and IDBCreateSession.

2.         Use GetJetEngineType function to get the version of Jet database.

3.         Fill a DBPROPSET structure with information about the destination database to compact to.

4.         Query the IDBCreateSession object for the Jet Compact object: IJetCompact.

5.         Call IJetCompact's Compact method passing in the DBPROPSET created in step 2.

The following code demonstrates the earlier steps using Visual C++ ATL OLE DB consumer templates:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


NOTE:

1.         If you have a compiler error such as:

DBPROP_JETOLEDB_ENGINE undefined specifier

For additional information about updated Jet header files, please click the article number below to view the article in the Microsoft Knowledge Base:

228525 PATCH: JetVC.exe VC++ Support Files for the Jet OLE DB Provider

2.         Inline the GetJetEngineType function in your code if you don't want to open another connection.

3.         Compacting a database also repairs the database, unlike in DAO where it was a separate functionality. In OLE DB there is no way to only repair a database.

REFERENCES

For additional information, please click the article number below to view the article in the Microsoft Knowledge Base:

230501 HOWTO: Compacting Microsoft Access Database via ADO

The information in this article applies to:

           Microsoft OLE DB Provider for Jet 4.0

           Microsoft Data Access Components 2.1

           Microsoft Data Access Components 2.5

           Microsoft Data Access Components 2.6

 

(www.sinoprise.com)

VC用ADO访问数据库

VC用ADO访问数据库全攻略,介绍了VC用ADO来访问数据库的各个对象及各方法,很经典,也很实用,很值得一看。  正文  一、ADO概述  ADO是Microsoft为最新和最强大的数据访问...
  • worldy
  • worldy
  • 2013年09月21日 11:18
  • 4537

VC使用ADO访问sql server数据库

软件:vs2010、sql server2005 代码如下: #include #include using namespace std; //1、添加对ADO的支持 #import "C...
  • woshiyuanlei
  • woshiyuanlei
  • 2015年05月31日 13:37
  • 1505

分享关于VC 使用ADO数据库使用的方法封装类

ADO访问数据库的
  • YinLeNan
  • YinLeNan
  • 2014年07月27日 14:43
  • 637

ADO在VC的MFC下连接数据库并插入数据

1,ADO连接数据库 一般不用ODBC连接数据库,太古老了,主流用ADO连接数据库。 连接步骤: 1需要先安装SQL SEVER2008。 启动运行服务器SQL SEVER(MSSQLSERV...
  • a286089246
  • a286089246
  • 2016年09月26日 15:06
  • 2444

VC使用ADO连接SQLServer数据库(精简实用版)

VC使用ADO连接SQLServer数据库 分类: 开发路上的点点滴滴2012-05-18 18:32 946人阅读 评论(0) 收藏 举报 sqlservermicrosoft数...
  • foreverhuylee
  • foreverhuylee
  • 2014年06月28日 14:46
  • 1766

VC_ADO连接SQLSERVER时连接字符串的模式

VC的数据库编程中,使用ADO连接连接SQL SERVER 时,连接字符串的概念很重要。 这篇文章重点介绍ADO和SQL SERVER进行连接时,几种不同的连接字符串形式,并且分析了连接SQL SER...
  • foreverhuylee
  • foreverhuylee
  • 2014年07月01日 18:40
  • 7102

C++ ADO方式连接mysql数据库

对于软件开发其实说白了就是在不停地和数据打交道, 所以数据库的操作是必不可少的, 接下来介绍VC开发中利用ADO建立ODBC数据源来访问MySQL数据库.        从我接触的数据库编程方式来说,...
  • lbcab
  • lbcab
  • 2016年05月06日 10:02
  • 4071

VC+ADO+多线程高效、安全的读写数据库

一、问题介绍项目需要实时获取并处理40路相机的现场图像,并将处理结果写入到数据库,采用的方案是使用多线程技术,创建40个工作者线程,每个线程建立一个数据库连接。本文仅将项目中遇到的问题以及解决方法做些...
  • HolaMirai
  • HolaMirai
  • 2016年09月05日 16:31
  • 2288

VS2010通过ADO连接EXCEL数据库

通过在网上以及书本中寻找各种VC读取EXCEL文件的方式后,最终自己加以融合,提出了一种较为简单的连接数据库的方式。现将该方法分布叙述如下: 第一步:在相应头文件中添加如下代码 #import "...
  • Arthur_ZHU
  • Arthur_ZHU
  • 2015年05月20日 19:08
  • 1654

VC利用ADO访问数据库

一、ADO概述   ADO是Microsoft为最新和最强大的数据访问范例 OLE DB 而设计的,是一个便于使用的应用程序层接口。ADO 使您能够编写应用程序以通过 OLE. DB 提供者访问...
  • civay123
  • civay123
  • 2014年07月28日 20:34
  • 316
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用ado压缩数据库(vc源代码)
举报原因:
原因补充:

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