如何在VB中压缩access数据库

博客展示了在VB中压缩ACCESS数据库的代码。包含在Form_Load事件中设置数据库路径,在Command1_Click事件里进行数据库备份、修复、压缩等操作,还介绍了使用Microsoft Jet and Replication压缩数据库的方法,涉及创建临时数据库、删除原数据库等步骤。

Private Sub Form_Load()
  Text1.Text = App.Path & "/db1.mdb"
End Sub
Private Sub Command1_Click()
  On Error Resume Next
  Dim sNewName As String
  Dim sBakFile As String
  sNewName = Text1.Text
  sDatabase = sNewName
  MousePointer = 11
  sNewFile = Left$(sDatabase, Len(sDatabase) - 3) & "NEW"
  sBakFile = Left$(sDatabase, Len(sDatabase) - 3) & "BAK"
  If Check1.Value = 1 Then
     Name sDatabase As sBakFile         '备份数据库
  End If
  DBEngine.RepairDatabase sDatabase         '修复数据库
  If Dir(sNewFile) <> "" Then
     Kill sNewFile
  End If
  DBEngine.CompactDatabase sDatabase, sNewFile '压缩数据库
  If Dir(sBakFile) <> "" Then
     Kill sBakFile
  End If
  If Dir(sDatabase) <> "" Then
     Kill sDatabase
  End If
  Name sNewFile As sDatabase
  bCompactMDB = True
  MousePointer = 0
  MousePointer = 0
  MsgBox "压缩数据库完成!"
End Sub
Private Sub Command3_Click()
  End
End Sub

---------------------------------------------------------------------------------------------------------

在VB中压缩ACCESS数据库

http://it.icxo.com/htmlnews/2004/07/29/278348.htm

---------------------------------------------------------------------------------------------------------

'使用vb提供的Microsoft Jet and Replication来压缩数据库
'在引用中选中Microsoft Jet and Replication,然后应用如下代码

Dim j As New JRO.JetEngine
'创建压缩临时数据库到另一目录
j.CompactDatabase "provider=Microsoft.Jet.OLEDB.4.0;data " & _
                    "source=D:/myDB.mdb;" & _
                    "jet oledb:database password=123456789", _
                  "provider=Microsoft.Jet.OLEDB.4.0;data " & _
                    "source=E:/myDB.mdb;" & _
                    "jet oledb:encrypt database=true;" & _
                    "jet oledb:database password=123456789"

'删除原来的数据库
Kill "D:/myDB.mdb"
'将压缩后的数据库复制回原来位置
FileCopy "E:/myDB.mdb", "D:/myDB.mdb"
'删除临时数据库
Kill "E:/myDB.mdb"
set j = nothing

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值