Access软件本身就具备压缩和修复功能,如图:
方法一:单击 压缩和修复数据库 按钮即可;
方法二: 单击 压缩和修复 按钮即可;
另外还可以设置每次开关Access时自动压缩:
第一步,单击 选项 选项卡:
第二步:选择 关闭时压缩
运行access自带的压缩和修复工具是不会删除数据库里面的对象的。题主所称有数据表和查询对象在经系统自带压缩工具修复后丢失应该是由其他原因导致的。由于access数据库不支持事务,如果之前未做任何备份,数据库无法恢复被删除的数据库对象和之前存储的数据状态。以前使用DAO
时,Microsoft
有提供
CompactDatabase
Method
来压缩
Microsoft
Access
文件,RepairDatabase
Method
来修复损坏的
Microsoft
Access
文件,。可是自从
ADO
出来之后,好像忘了提供相对的压缩及修复
Microsoft
Access
文件的功能。
现在
Microsoft
发现了这个问题了,也提供了解决方法,不过有版本上的限制!限制说明如下:
ActiveX
Data
Objects
(ADO),
version
2.1
Microsoft
OLE
DB
Provider
for
Jet,
version
4.0
这是
Microsoft
提出的
ADO
的延伸功能:Microsoft
Jet
OLE
DB
Provider
and
Replication
Objects
(JRO)
这个功能在
JET
OLE
DB
Provider
version
4.0
(Msjetoledb40.dll)
及
JRO
version
2.1
(Msjro.dll)
中第一次被提出!
这些必要的
DLL
文件在您安装了
MDAC
2.1
之后就有了,您可以在以下的网页中下载
MDAC
的最新版本!
Universal
Data
Access
Web
Site
在下载之前先到
VB6
中检查一下,【控件】【设定引用项目】中的
Microsoft
Jet
and
Replication
Objects
X.X
library
如果已经是
2.1
以上的版本,您就可以不用下载了!
1、新建一个新表单,选择功能表中的【控件】【设定引用项目】。
2、加入
Microsoft
Jet
and
Replication
Objects
X.X
library,其中
(
X.X
大于或等于
2.1
)。
3、在适当的地方加入以下的程序代码,记得要修改
data
source
的内容及目地文件的路径:
Dim
jro
As
jro.JetEngine
Set
jro
=
New
jro.JetEngine
jro.CompactDatabase
"Provider=Microsoft.Jet.OLEDB.4.0Data
Source=d:\
wind2.mdb",
_
'来源文件
在
DAO
3.60
之后,RepairDatabase
Method
已经无法使用了,以上的程序代码显示了
ADO
CompactDatabase
Method
的用法,而它也取代了
DAO
3.5
时的
RepairDatabase
method!
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)