国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Access > 正文

在VB中壓縮ACCESS數據庫

2020-03-24 17:07:38
字體:
來源:轉載
供稿:網友
如果您在Access數據庫、Access項目中刪除數據或對象,可能會產生碎片并導致磁盤空間使用效率的降低。同時,數據庫文件的大小并未減小,而是不斷的增大,直至您的硬盤沒有空間。有沒有好的處理方法呢?其實,在Access中可以對數據庫進行壓縮優化以提升Access數據庫和Access項目的性能,這樣的壓縮處理的實質是復制該文件,并重新組織文件在磁盤上的存儲方式。但是,在Access項目中進行這樣的壓縮不會影響到數據庫對象(例如表或視圖),因為它們是存儲在Microsoft SQL Server數據庫中而不是在Access項目本身中。同樣,這樣的壓縮也不會影響到Access項目中的自動編號。在Access數據庫中,如果已經從表的末尾刪除了記錄,壓縮該數據庫是就會重新設置自動編號值。添加的下一個記錄的自動編號值將會比表中沒有刪除的最后記錄的自動編號值大一。下面介紹如何在VB中用一個CompactJetDatabase過程實現對Access數據庫文件的壓縮處理,在這個過程中有一個可選參數,就是在壓縮前你是否需要把原有的數據庫文件備份到臨時目錄(True或False)。我用此辦法使21.6MB的數據庫壓縮到僅僅300KB。‘這些代碼可放在模塊中,在其他窗體也使用Public Declare Function GetTempPath Lib "kernel32" Alias _ "GetTempPathA" (ByVal nBufferLength As Long, ByVal lpBuffer As String) As 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 Else 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 以后您在使用Access數據庫時可以嘗試進行這樣的壓縮,您應該會發現我說的沒有錯 本文作者:html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尚义县| 嘉荫县| 安西县| 鸡东县| 四平市| 罗田县| 昔阳县| 庆城县| 福鼎市| 闻喜县| 五大连池市| 马尔康县| 临汾市| 上栗县| 来宾市| 江都市| 曲沃县| 昂仁县| 白河县| 永平县| 二手房| 宾阳县| 阳信县| 三明市| 金塔县| 甘德县| 梅河口市| 浮山县| 秀山| 宁城县| 桑植县| 湖南省| 黎城县| 徐汇区| 额敏县| 通许县| 当阳市| 桂林市| 富源县| 晋州市| 定边县|