请教如何用SQL语句来压缩ACCESS数据库

2019-07-17 12:12发布

通过对ACCESS数据库的“修复与压缩”会使程序的运行更加稳定和提高运行速度。——请教如何用SQL语句来压缩ACCESS数据库,只用SQL语句哟!谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
Jack315
1楼-- · 2019-07-17 16:46
 精彩回答 2  元偷偷看……
Jack315
2楼-- · 2019-07-17 18:56
如果要通过编程实现 “修复与压缩” 的功能可以用 CompactDatabase 方法:
- DAO :: DBEngine.CompactDatabase
- JRO :: CompactDatabase
victor400
3楼-- · 2019-07-17 20:56
百度搜一下一大把
luo_wei
4楼-- · 2019-07-17 22:52
Jack315 发表于 2014-11-30 08:18
如果要通过编程实现 “修复与压缩” 的功能可以用 CompactDatabase 方法:
- DAO :: DBEngine.CompactDatab ...

CompactDatabase  方法:这个怎么使用,谢谢
Jack315
5楼-- · 2019-07-18 01:47
本帖最后由 Jack315 于 2014-11-30 18:06 编辑
luo_wei 发表于 2014-11-30 16:00
CompactDatabase  方法:这个怎么使用,谢谢

假设编程环境为 Access VBA。首先要引用相应的库,比如 Microsoft Jet and Replication Object 2.6 Library。下面这段代码片段演示 CompactDatabase 的使用方法:

  1. Private Sub CompactDBFile()
  2. ' 压缩数据库文件
  3.     Const cstrTemporaryFileName = "Temporary.mdb"
  4.     Dim jroJE As New JRO.JetEngine
  5.     Dim strSourceFile As String
  6.     Dim strDestinationFile As String

  7.     ' 如果数据库文件之前已打开连接,则关闭该数据库文件的连接
  8.     If mconData.State <> adStateClosed Then CloseConnection

  9.     ' mstrFileName 含有欲操作的数据库文件名
  10.     strDestinationFile = GetDatabankDirectory & mstrFileName
  11.     If Dir(strDestinationFile) <> "" Then
  12.         ' 确保临时文件不存在
  13.         strSourceFile = GetDatabankDirectory & cstrTemporaryFileName
  14.         If Dir(strSourceFile) <> "" Then Kill strSourceFile

  15.         ' 将欲压缩文件改名为临时文件
  16.         Name strDestinationFile As strSourceFile

  17.         ' 压缩临时文件
  18.         jroJE.CompactDatabase cstrConnection & strSourceFile & ";", cstrConnection & strDestinationFile & ";"
  19.         ’ 删除临时文件
  20.         Kill strSourceFile
  21.     End If
  22. End Sub
复制代码
另外,LZ也可以参考 Access VBA 中关于 CompactDatabase 方法的帮助:


Temp.jpg


luo_wei
6楼-- · 2019-07-18 07:05
 精彩回答 2  元偷偷看……

一周热门 更多>