mdb壓縮
⑴ Microsoft Access 資料庫文件(.mdb 或 .accdb 格式)為什麼越來越大,如何壓縮及如何避免文件增大
Microsoft Access 資料庫文件越來越大的主要原因包括數據的頻繁更新、添加、刪除和恢復,臨時文件的累積,以及索引文件的擴展。壓縮方法及避免文件增大的措施如下:
壓縮方法: 啟用自動壓縮功能:確保在每次關閉資料庫時自動進行壓縮。 使用VBA腳本執行壓縮任務:可以通過編寫VBA代碼,使用CompactDatabase函數實現資料庫的壓縮。例如,編寫一個VBA子程序,定時或手動執行壓縮操作。
避免文件增大的措施: 優化數據輸入:避免不必要的重復和冗餘數據輸入,減少數據冗餘。 定期清理無用數據和臨時文件:定期檢查和刪除資料庫中無用的數據和臨時文件,以保持資料庫的健康狀態。 設置自動壓縮功能:如上所述,啟用自動壓縮功能,以減少資料庫文件的大小。 分拆資料庫:對於非常大的資料庫文件,可以考慮將其分拆為多個較小的資料庫,或者使用鏈接表的方式管理數據。 遷移至更強大的資料庫系統:如果Access資料庫文件持續增大且性能受到影響,可以考慮將其遷移至更強大的資料庫系統,如sql Server。
重點總結: 定期維護和優化:是保持Access資料庫性能的關鍵,可以有效避免文件過度膨脹。 關注專業資源和社區:如@小辣椒高效Office等,可以獲取更多關於Access資料庫管理和優化的技巧和源碼。
⑵ mdb資料庫過於龐大為什麼,怎麼處理
簡單的話,你可以使用資料庫ACCESS自帶的壓縮工具,在工具菜單->資料庫實用工具裡面.他可以幫你壓縮.(我沒試過是否能調用,看看裡面的VB宏,是否有對應方法,有的話你直接調用)
不過告訴你,資料庫過於龐大,是因為他為了保證能保存所有數據(一般是你保存過的最大數據量)而擴大了體積.比如你以前保存過120條記錄,但是現在只有20條,但是大小仍舊是120條時候的大小.還比如,一個沒有記錄的資料庫,只有一個表格,大小卻有120K,用WINRAR壓縮後發現只有8K.實在是......
⑶ mdb文件太大了,想弄小一點的.有什麼方法
mdb文件太大了,想弄小一點的。有什麼方法.
有什麼軟體。或是方法可以弄小一點的。。
MDB資料庫的冗餘是很大的。。
你可以使用access打開資料庫,選擇 工具 -> 資料庫實用工具 -> 壓縮和修復資料庫,一般可以使MDB的資料庫減小很多的。
追問:
太NB了,,就你了。。。9M壓完了,,不到1M哈哈`~`
打開 壓縮一下
壓縮MDB文件 >在Access97里, 我們可以開一個資料庫後, 利用工具-->資料庫公用程式
>來壓縮此一資料庫,
>可是在壓縮時, Access會先將此資料庫"關閉", 再進行壓縮,
>然後再開啟壓縮後的資料庫,
>那麼我該如何在表單的這個按鈕做呢??
>因為DBGird這個物件仍和資料庫做聯結, 所以我無法"關閉"此一資料庫...
Data1.Recordset.Close
Data1.Database.Close
DBEngine.CompactDatabase "SourceDatabase", "TargetDatabase"
!!!你平常在 Dao 佇怎麼用 Database 和 Recordset ,就怎麼用 Data.Database 和
Data.Recrodset!!!
mdb其實不大,可是我每次做資料庫的操作,用幾次就很大了,你可以把裡面的表都導出到另一個mdb裡面就小了
個人不推薦用mdb因為每次資料庫有更改都要重新上傳,除非非常好的sql功底可以直接寫表,不然有什麼表的結構都要重新上傳了
如果你是使用像ASP之類的做網頁的話,還可以自己編寫程序去進行壓縮和修復,這樣就免去了每次的下載和上傳資料庫的過程。定期對MDB進行壓縮修復也是一種變現的對資料庫的維護吧~
⑷ VB中 如何用winrar 壓縮一個文件夾
如果是本地文件,可以這樣:一些資料庫文件(如Access文件)在遠程傳輸過程中可能由於文件比較大而影響傳遞效果。如果進行壓縮以後再傳遞,會減少傳遞時間,避免意外的發生,同時也保證了傳遞效果。我們在壓縮文件時,最常用的壓縮工具為WinRar和Winzip,筆者在VB編程過程中利用WinRar工具來壓縮資料庫文件,並完成遠程傳輸,十分方便,在此向大家介紹一下。用WinZip的方法類似。
一、Shell函數
Shell函數是VB中的內部函數,它負責執行一個可執行文件,返回一個Variant(Double),如果成功的話,代表這個程序的進程ID,若不成功,則會返回0。
Shell的語法:Shell(PathName[,WindowStyle])。
PathName 為必需參數。類型為String,它指出了要執行的程序名,以及任何需要的參數或命令行變數,也可以包括路徑名。
WindowStyle為可選參數。Integer類型,指定在程序運行時窗口的樣式。WindowStyle有以下這些值。
常量值描述
VbHide 0 窗口被隱藏,且焦點會移到隱式窗口。
VbNormalFocus 1 窗口具有焦點,且會還原到它原來的大小和位置。
VbMinimizedFocus 2 窗口會以一個具有焦點的圖標來顯示(預設值)。
VbMaximizedFocus 3 窗口是一個具有焦點的最大化窗口。
VbNormalNoFocus 4 窗口會被還原到最近使用的大小和位置,而當前活動的窗口仍然保持活動。
VbMinimizedNoFocus 6 窗口會以一個圖標來顯示,而當前活動的窗口仍然保持活動。
二、關於WinRar的用法
主要介紹以下如何在WinRar中用命令行來壓縮和解壓縮文件。
壓縮:WINRAR A [-switches] [Files] [@File lists]
例如你想把try.mdb壓縮到C盤下,可以WINRAR A C:\try.rar C:\try.mdb
解壓縮:如果帶目錄解壓縮
WINRAR X [-switches] [Files] [@File lists] [destionation folder\]
如果在當前目錄解壓縮,即解壓縮時不寫目錄名
WINRAR E [-switches] [Files] [@File lists] [destionation folder\]
例如你想把try.rar解壓縮到C盤下,可以WINRAR X C:\try.rar C:\try.mdb
三、一個例子
在VB中新建一個工程,在Form1中添加兩個按鈕Command1、Command2和Command3,把他們的Caption屬性分別設為"壓縮文件"、"解壓縮文件"和"傳遞文件"。按Command1時把文件try.mdb壓縮成try.rar。
Private Sub Command1_Click()
Dim Rarexe As String 'WINRAR執行文件的位置
Dim Source As String ' 壓縮前的原始文件
Dim Target As String ' 壓縮後的目標文件
Dim FileString as String 'Shell指令中的字元串
Dim Result As Long
Rarexe="C:\program files\winrar\winrar"
Source="C:\try.mdb"
Target="C:\try.rar"
FileString = rarexe & " a " & Target & " " & Source
Result = Shell(FileString, vbHide)
End Sub
解壓的過程類似,按Command2可以把try.rar解壓生成 try.mdb。在執行了上面的壓縮過程後,可以刪除文件try.mdb,來解壓縮重新生成try.mdb。
Private Sub Command2_Click()
Dim Rarexe As String 'WINRAR執行文件的位置
Dim Source As String ' 解壓縮前的原始文件
Dim Target As String ' 解壓縮後的目標文件
Dim FileString as String 'Shell指令中的字元串
Dim Result As Long
Rarexe="C:\program files\winrar\winrar"
Source="C:\try.rar"
Target="C:\try.mdb"
FileString = rarexe & " X " & Source & " " & Target
Result = Shell(FileString, vbHide)
End Sub
文件從一台計算機傳輸到另一台計算機前,應知道另一台計算機的名字,然後用FileCopy語句就可以了。假設要把壓縮後try.rar傳遞到計算機名為"other"的共享目錄"want"下。
Private Sub Command3_Click()
Dim SourceFile, DestinationFile
SourceFile ="C:\try.rar " ' 指定源文件名。
DestinationFile = "\\other\want\try.rar" ' 指定目的文件名。
FileCopy SourceFile, DestinationFile ' 將源文件的內容復制到目的文件中。
End Sub
怎麼樣,十分簡單吧?