2013-04-05 42 views
1

介紹的最佳方式:什麼是防止Access數據庫臃腫

我創建將與多用戶功能來推出了Access數據庫系統。 但是,因爲我在Access 2000中創建了這個數據庫(我知道老派),當我的數據庫通過40-60MB時,會出現很多錯誤和隨機的神祕問題。

我的問題:

有沒有人得到了很好的解決了我怎麼能縮小下來或防止膨脹?

詳情:

我使用的許多當地表與SQL表和我的前端鏈接到一個後端的SQL Server相結合。 我已經嘗試過緊湊和修復,但它只能縮小到15MB左右,用戶使用數據庫幾次後,膨脹迅速擴大到50-60MB!

讓我知道是否需要更多細節,但這是我的問題的粗略輪廓。

非常感謝!

+1

您*確實知道Microsoft在3.5年前停止支持Office 2000產品,對吧?如果您遇到「bug和隨機神祕問題」的問題,那麼繼續使用過時的軟件可能不是最好的選擇。 – 2013-04-05 10:42:57

+1

您是否嘗試升級到較新版本的Access?我仍然使用1993年第一次在Access 1.0中編碼的應用程序。我將它升級到新的辦公版本,因此它們很少會破壞任何東西。如果某件事情崩潰了,修復它通常很容易。購買新的Access許可證可能比大型Access 2000數據庫所需的所有維護和維護要便宜。 – 2013-04-05 11:37:25

+0

謝謝你的回覆!我完全同意你們兩人的看法,認爲升級肯定是前進的方向,但公司堅持使用遺留系統,並與我們現有的Access系統進行許多複雜的集成,因此升級對我們而言目前並不是想法。所以我只是試圖從Access 2000中獲得最大的收益。 如果我們升級了系統,但是有很多代碼需要檢查,我們正在重寫和測試將涉及的新更改! – Justin 2013-04-05 13:00:44

回答

2

這裏有一些想法讓你遵循。

你說你也有很多本地表。將本地表分成另一個Access數據庫。因此,您將擁有2個後端(1個SQL Server & 1 Access)和前端。

創建一個批處理文件,用/compact選項打開本地表後端數據庫。因此,它看起來像這樣:

"C:\Prog...\Microsoft...\Officexx\ C:\ProjectX_backend.mdb /compact" 

然後使用計劃任務每​​天運行此批處理文件。除非您以任何方式進行編輯,否則您的前端應永不需要壓縮。

+0

我試過這個方法,它對於我想要的是完美的!膨脹不包含在本地後端可以說,並保持前端新鮮和無臃腫!欣賞湯姆的想法!謝謝! – Justin 2013-04-09 13:07:56

+0

不客氣。很高興它對你有效。 – 2013-04-09 17:12:29

1

如果你對2000年的聲譽不好,那麼你必須深入研究你的應用程序,並找出造成膨脹的原因。最常見的原因是大容量插入之後刪除。其他原因是使用OLE對象字段。其他原因是在形式等對象上的程序變化。你真的必須通過你的應用程序,找到具體的原因。

僅連接到支持的服務器並且不會更改本地對象的mdb文件不應該增長。

至於你的隨機問題,除了在2000版本中缺乏穩定性之外,如果你的mdb文件在網絡上共享,你應該查看計算機壞的RAM,壞的硬盤驅動器和壞掉的網絡控制器。

+0

謝謝您的建議!我將着眼於這些潛在的問題,可能會導致重大的系統膨脹。計算機可能有一部分可以玩,因爲我們仍然在某些機器上運行XP,這可能會限制可用RAM,因爲XP限制!當我嘗試並測試了其中一些想法時,我會報告。 – Justin 2013-04-05 13:04:49