在網(wǎng)頁(yè)上進(jìn)行access數(shù)據(jù)庫(kù)壓縮的方法

多年前給客戶做的數(shù)據(jù)庫(kù),用得是 access,已經(jīng)兩年,長(zhǎng)得非常大,有 1G 這么大。隨著您不斷添加、更新數(shù)據(jù)以及更改數(shù)據(jù)庫(kù)設(shè)計(jì),數(shù)據(jù)庫(kù)文件會(huì)變得越來越大。導(dǎo)致增大的因素不僅包括新數(shù)據(jù),隨著數(shù)據(jù)庫(kù)文件不斷被遺留的臨時(shí)對(duì)象和已刪除對(duì)象所填充,其性能也會(huì)逐漸降低。其癥狀包括:對(duì)象可能打開得更慢,查詢可能比正常情況下運(yùn)行的時(shí)間更長(zhǎng),各種典型操作通常似乎也需要使用更長(zhǎng)時(shí)間。
所以對(duì)access數(shù)據(jù)庫(kù)進(jìn)行壓縮也是勢(shì)在必行。
實(shí)在是會(huì)擔(dān)心,如果不小心壞了,那可是救都救不回來。還好,備份一個(gè) access 的數(shù)據(jù)庫(kù)非常簡(jiǎn)單,就把那個(gè)檔案復(fù)制一份,就解決了。甚至,還可以寫一個(gè) aspx 網(wǎng)頁(yè),來執(zhí)行這個(gè)動(dòng)作,讓我在任何地方,只要有網(wǎng)絡(luò),就可以用網(wǎng)頁(yè)來做備份,就算我用 iPad,iPhone,Android手機(jī)都可以。雖然是小題大作,一年不過做個(gè)兩、三次的事,但是,若能夠不讓客戶擔(dān)心的情況下,做完這些保險(xiǎn)的事,也會(huì)有讓他們信任的感受。就算不是計(jì)算機(jī)自動(dòng)化地來做,至少也是我自動(dòng)地做,也算是自動(dòng)化了??!
但是,只有備份,仍然不夠,備份只解決了失效復(fù)原的第一步。接下來面臨的是舊數(shù)據(jù)越來越多,如果不刪除,檔案越來越大,查詢的時(shí)間越來越長(zhǎng),真的是無謂的浪費(fèi)時(shí)間。所以,接下來完成了刪除舊數(shù)據(jù)的功能。但是,這又產(chǎn)生一個(gè)不滿足。雖然,數(shù)據(jù)刪了,查詢速度又回復(fù)以往的快速,但是,數(shù)據(jù)文件的大小,仍然維持一樣。著實(shí)想想真是不開心。
使用 office access,可以把 mdb 打開,然后在「主功能(左上的窗口)」->「管理」->「壓縮及修復(fù)數(shù)據(jù)庫(kù)」這個(gè)功能,把數(shù)據(jù)庫(kù)壓縮。
這么做,就需要人工來做。并且要準(zhǔn)備一臺(tái)裝有 MS access 的計(jì)算機(jī)才行。
當(dāng)然這工作,用指令也行,但還是要在裝有 MS access 的計(jì)算機(jī)執(zhí)行指令,然后用工作排程器執(zhí)行(參考)。
C:\Program Files (x86)\Microsoft Office\Office12\MSACCESS.EXE c:\Northwind.mdb /compact
這種若要想用網(wǎng)頁(yè)執(zhí)行,則會(huì)因?yàn)槟撤N限制而無法執(zhí)行。猜測(cè)主要是因?yàn)?MSACCESS.exe 是桌面程序。執(zhí)行后就卡住,沒有把工作做完。這應(yīng)該只是設(shè)定的問題,因?yàn)樵陂_發(fā)環(huán)境是可以正常使用。但是在 IIS 的環(huán)境,就是卡住。有人提醒 service 程序也許不能與桌面互動(dòng)而導(dǎo)致問題(參考)。我試過這方法也是失敗。我們以前嘗試過,如果是 console 程序,是可以的執(zhí)行成功的。
為了堅(jiān)持要用網(wǎng)頁(yè)執(zhí)行,尋找許久,在微軟的開發(fā)環(huán)境里,都會(huì)安裝一個(gè) dao。它只是一個(gè) dll。只要把 dao.dll 復(fù)制一份在 bin 里面,然后引用它。只要用兩行就搞定了。
dao.DBEngine dbe = new DBEngine();
dbe.CompactDatabase(target_uncompact, target_compact, null, null, null);
相關(guān)文章
WebStorm如何調(diào)試Vue項(xiàng)目? webstorm配置vue開發(fā)環(huán)境指南
WebStorm 支持多種調(diào)試工具,包括瀏覽器的開發(fā)者工具,但本文主要講解的是使用 WebStorm 自帶的調(diào)試功能2025-04-15VSCode和webstorm怎么設(shè)置綠色護(hù)眼背景? 綠豆沙背景色的設(shè)置方法
護(hù)眼色一定程度能保護(hù)眼睛,緩解疲勞,VSCode和webstorm這兩款常用的軟件怎么設(shè)置護(hù)眼色呢?詳細(xì)請(qǐng)看下文介紹2025-04-15WebStorm常用插件以及實(shí)用設(shè)置分享
WebStorm本身已經(jīng)足夠強(qiáng)大,但一些優(yōu)秀的插件能錦上添花,顯著提升開發(fā)效率,詳細(xì)請(qǐng)看下文介紹2025-04-15如何安裝配置WebStorm? WebStorm安裝與使用全方位指南
WebStorm軟件在前端和后端開發(fā)領(lǐng)域都備受青睞,很多朋友不知道該怎么下載安裝,下面我們就來看看詳細(xì)的安裝配置教程2025-04-15Webstorm怎么配置? Webstorm入門之軟件配置教程
WebStorm是一款功能強(qiáng)大的集成開發(fā)環(huán)境(IDE),支持各種前端開發(fā)技術(shù),今天我們就來看看Webstorm的配置教程2025-04-15Webstorm怎么設(shè)置字體大小/背景顏色/背景圖片?
WebStorm 允許您自定義界面顏色,以創(chuàng)建更個(gè)性化和美觀的工作空間,今天我們就來看看Webstorm改變字體大小、背景顏色、設(shè)置背景圖片的方法2025-04-15- VScode上安裝PlatformIO插件能成功安裝,嘗試卸載VScode并刪除插件,這些錯(cuò)誤仍然存在,下面我們就來看看這個(gè)問題的解決辦法2025-04-03
提升代碼搜索效率! VSCode里DeepSeek插件安裝與配置指南
今天我們將向大家介紹如何在Visual Studio Code中安裝并配置 DeepSeek 插件,幫助你更高效地進(jìn)行代碼搜索2025-04-07提升你的編程效率! VSCode的初級(jí)使用教程超詳細(xì)版
VSCode是一款免費(fèi)且開源的代碼編輯器,因其強(qiáng)大的功能和良好的用戶體驗(yàn)而廣受歡迎,本文將詳細(xì)介紹 VSCode 的基本使用方法,并通過插圖幫助你更好地理解2025-04-03- 今天我們來聊聊如何安裝和配置VS Code,讓它成為你編程路上的得力助手,這個(gè)過程其實(shí)很簡(jiǎn)單,只要跟著我的步驟走,你絕對(duì)能搞定2025-04-03