使用ADO來压缩或修复MicrosoftAccess文件

2/27/2006来源:Visual Basic教程人气:7526

以前使用DAO時,Microsoft有提供CompactDatabaseMethod來压缩Microsoftaccess文件,RepairDatabaseMethod來修复损坏的MicrosoftAccess文件,。可是自从ADO出來之后,好像忘了提供相对的压缩及修复MicrosoftAccess文件的功能。

現在Microsoft发现了这个问题了,也提供了解決方法,不过有版本上的限制!限制說明如下:

ActiveXDataObjects(ADO),version2.1
MicrosoftOLEDBPRoviderforJet,version4.0

這是Microsoft提出的ADO的延伸功能:MicrosoftJetOLEDBProviderandReplicationObjects(JRO)

这个功能在JETOLEDBProviderversion4.0(Msjetoledb40.dll)及JROversion2.1(Msjro.dll)中第一次被提出!
這些必要的DLL文件在您安裝了MDAC2.1之后就有了,您可以在以下的网页中下载MDAC的最新版本!

UniversalDataAccessWebSite

在下载之前先到VB6中檢查一下,【控件】【設定引用項目】中的MicrosoftJetandReplicationObjectsX.Xlibrary如果已经是2.1以上的版本,您就可以不用下载了!

在您安裝了MDAC2.1或以上的版本之后,您就可以使用ADO來压缩或修复MicrosoftAccess文件,下面的步骤告訴您如何使用CompactDatabaseMethod來压缩MicrosoftAccess文件:

1、新建一個新表单,选择功能表中的【控件】【設定引用項目】。
2、加入MicrosoftJetandReplicationObjectsX.Xlibrary,其中(X.X大于或等于2.1)。
3、在适当的地方加入以下的程序代码,記得要修改datasource的內容及目地文件的路径:

DimjroAsjro.JetEngine
Setjro=Newjro.JetEngine
jro.CompactDatabase"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=d:\\nwind2.mdb",_'來源文件
"Provider=Microsoft.Jet.OLEDB.4.0;DataSource=d:\\abbc2.mdb;JetOLEDB:EngineType=4"'目的文件

在DAO3.60之后,RepairDatabaseMethod已经无法使用了,以上的程序代码显示了ADOCompactDatabaseMethod的用法,而它也取代了DAO3.5時的RepairDatabasemethod!->