VB压缩/修复Access数据库操作源代码

原创 2007年09月27日 18:36:00

在Access数据库操作时经常数据库经常会由于操作频繁而出现各种问题.以及数据库无限的增大.为了不影响使用我们需要对数据库进行压缩/修复.以下代码就是用VB压缩并且修复Access数据库德 代码.大家可以直接使用.

Public Declare Function GetTempPath Lib "kernel32" Alias "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As StringAs Long

 
Public Const MAX_PATH = 260

 
Public Sub CompactJetDatabase(Location As String, Optional BackupOriginal As Boolean = True)

     
On Error GoTo CompactErr

     
Dim strBackupFile As String

     
Dim strTempFile As String

     
'检查数据库文件是否存在

     
If Len(Dir(Location)) Then

        
' 如果需要备份就执行备份

        
If BackupOriginal = True Then

            strBackupFile 
= GetTemporaryPath & "backup.mdb"

            

            
If Len(Dir(strBackupFile)) Then Kill strBackupFile

            

            FileCopy Location, strBackupFile

        
End If

        
' 创建临时文件名

        strTempFile 
= GetTemporaryPath & "temp.mdb"

        

        
If Len(Dir(strTempFile)) Then Kill strTempFile

        

        
'通过DBEngine 压缩数据库文件

        DBEngine.CompactDatabase Location, strTempFile

        
' 删除原来的数据库文件

        Kill Location

        
' 拷贝刚刚压缩过临时数据库文件至原来位置

        FileCopy strTempFile, Location

        
' 删除临时文件

        Kill strTempFile

    
End If

        

    

    

CompactErr:

    

             
Exit Sub

 
End Sub

 
Public Function GetTemporaryPath()

    
Dim strFolder As String

    
Dim lngResult As Long

    strFolder 
= String(MAX_PATH, 0)

    lngResult 
= GetTempPath(MAX_PATH, strFolder)

    
If lngResult <> 0 Then

        GetTemporaryPath 
= Left(strFolder, InStr(strFolder, Chr(0)) - 1)

    
Else

        GetTemporaryPath 
= ""

    
End If

 
End Function
 

VB.NET压缩ACCESS数据库

创建数据库  Private Sub Create(ByVal mdbPath As String)        If File.Exists(mdbPath) Then            Th...
  • emailqjc
  • emailqjc
  • 2009年11月09日 15:34
  • 2678

VB 压缩Access数据库

工程-引入 Microsoft Jet and Replication Objects Library Private Sub Command1_Click()Dim FIXDB As New JRO...
  • jyh_jack
  • jyh_jack
  • 2008年03月24日 16:29
  • 738

压缩修复Access数据库

using JRO //引用 public void Compact(string mdbPath)         {             if (!File.Exists(mdbP...
  • u010034670
  • u010034670
  • 2014年01月14日 18:57
  • 795

有关Access的压缩和修复数据库功能

 用过Access数据库的朋友一定知道有个“压缩和修复数据库”的功能。 为什么要 “压缩和修复数据库”首先是当然是压缩,减少文件大小。因为Access是一种文件型数据库,它所有的数据其实都是存储在一个...
  • tjianliang
  • tjianliang
  • 2008年07月23日 18:27
  • 8556

vb 压缩和修复access数据库

  • 2012年03月26日 08:39
  • 2KB
  • 下载

压缩/修复 Access数据库操作 (VB/ASP)

在Access数据库操作时经常数据库经常会由于操作频繁而出现各种问题.以及数据库无限的增大.为了不影响使用我们需要对数据库进行压缩/修复.以下代码就是用VB压缩并且修复Access数据库德 代码.大家...
  • bg1jt
  • bg1jt
  • 2008年01月29日 08:38
  • 1579

解决Access文件越来越大的问题

有时候在使用Access文件的时候,随着增删改的不断的连续,会导致文件越来越大。即使手动删除或者使用delete语句删除了大量的数据记录,会发现文件的大小依然没有减掉,而且随着你再往里写数据,又会增大...
  • sundacheng1989
  • sundacheng1989
  • 2014年04月23日 10:12
  • 9804

VB压缩/修复Access数据库操作源代码

在Access数据库操作时经常数据库经常会由于操作频繁而出现各种问题.以及数据库无限的增大.为了不影响使用我们需要对数据库进行压缩/修复.以下代码就是用VB压缩并且修复Access数据库德 代码.大家...
  • cncco
  • cncco
  • 2007年09月27日 18:36
  • 3048

vb.net压缩access文件(.accdb)

vb.net压缩access文件(.accdb) 由于access文件(.accdb)会记录操作,所以即使执行了delete数据的处理,该文件的大小还是会不断增加. 解决思路:将原有的acce...
  • bigheadsheep
  • bigheadsheep
  • 2012年07月03日 10:59
  • 1177

C#修复/压缩ACCESS数据库的代码

添加引用 ->COM ->Microsoft Jet and Replication Objects 2.6 Library命名空间 System.IOpublic object CompactAcc...
  • zouchunhui
  • zouchunhui
  • 2005年07月19日 21:52
  • 1155
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VB压缩/修复Access数据库操作源代码
举报原因:
原因补充:

(最多只允许输入30个字)