设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2630|回复: 11
打印 上一主题 下一主题

[其它] [求助]关于数据库压缩的问题

[复制链接]
跳转到指定楼层
1#
发表于 2006-5-15 03:22:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
有很多数据库,每次运行后体积都增大不少,逐一打开工具-数据库实用工具-压缩和修复数据库来压缩实在麻烦,有没有什么好办法可以不用逐一打开数据库就能实现压缩??

谢谢先!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-5-15 04:33:00 | 只看该作者
作 者:tmtony
摘 要:ACCESS可以在退出时压缩数据库,但是我想在代码中来压缩当前打开的数据库,能办到吗? 正 文: ACCESS只能压缩已关闭的ACCESS数据库,因此,不能在代码中直接对当前的数据库进行。 但是ACCESS可在菜单上选择[压缩]来压缩当前正打开的数据库,如是我们就可以通过程序临时添加一个工具条按钮,然后使用 SendKeys 来模拟键盘操作,实现压缩当前数据库,压缩后它会重新打开。函数如下: Function Compact() ' 添加一个工具条 With CommandBars.Add(, msoBarFloating, , True) ' 在工具条上添加一个按钮,这个按钮是从系统菜单的[工具]中[压缩]产生的 .Controls.Add msoControlButton, CommandBars("Tools").Controls(7).CommandBar.Controls(2).Id .Visible = True ' 将焦点移到该按钮上 .Controls(1).SetFocus ' 模拟击键 SendKeys "{ENTER}" End With End Function

或者:

在菜单栏选择-》工具-》选项-》常规-》关闭时压缩-》打上钩
就可以了
3#
发表于 2006-5-15 05:25:00 | 只看该作者
或者在窗体上建个按钮执行下面的代码

CommandBars("menu bar").Controls("工具(&T)").Controls("数据库实用工具(&D)").Controls("压缩和修复数据库(&C)...").accDoDefaultAction
4#
 楼主| 发表于 2006-5-15 06:14:00 | 只看该作者
谢谢两位

但是,两位的方法好像也只能对当前数据库进行压缩,也就是说还是必须逐一打开数据库,仍旧麻烦
5#
发表于 2006-5-15 06:39:00 | 只看该作者
以下是引用ysgm1978g在2006-5-14 22:14:00的发言:


谢谢两位

但是,两位的方法好像也只能对当前数据库进行压缩,也就是说还是必须逐一打开数据库,仍旧麻烦



      可以尝试用OpenCurrentDatabase的方法打开数据库,再通过上面的方法进行压缩
6#
发表于 2006-5-15 07:21:00 | 只看该作者
paul16的例子

使用代码压缩后端数据库!
Public Sub 压缩后端数据库() '压缩后端数据
Dim StrFTemp As String
Dim StrFName As String
Dim Lstar As Long, Lend As Long
StrFName = "D:\PoseSky商业管理软件\PoseSky_be.mdb"
StrFTemp = "D:\PoseSky商业管理软件\temp001.mdb"
If Dir(StrFTemp) <> "" Then Kill StrFTemp
If Dir(StrFName) <> "" Then Name StrFName As StrFTemp Else MsgBox StrFName & "不存在,无法进行压缩!"
DBEngine.CompactDatabase StrFTemp, StrFName, , , ";pwd=密码"
Kill StrFTemp
End Sub

上例子变通修改一下就可压缩别的数据库了
7#
发表于 2006-5-15 07:26:00 | 只看该作者
一次压缩多个数据库的例子


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
8#
 楼主| 发表于 2006-5-16 06:13:00 | 只看该作者
谢谢谢谢谢谢谢谢谢谢!!!!!!!!!!
9#
发表于 2006-8-14 03:17:00 | 只看该作者
继续努力

[此贴子已经被作者于2006-8-13 20:29:19编辑过]

10#
发表于 2006-8-31 16:44:00 | 只看该作者
用SQL语言
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-9-21 06:14 , Processed in 0.108585 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表