如何拆分複製的Access 97資料庫
來源:互聯網
上載者:User
那些對Access資料庫無經驗的開發人員,他們常常不知道改變複製為對象設計,而不是資料表,那樣會引起一些問題。這是令人失望的,首先, 因為複製似乎是分布完整的Access應用程式的最好途徑,畢竟,Microsoft是支援它的。
問題是,Jet的複製是設計有資料表的。這是因為Jet複製主要是用於Visual Basic應用程式的,在那裡,只有資料可以被儲存在*.mdb檔案裡。這是它被測試最多的地方。對於Access 97來說,它總是被理解為,一個優秀的開發人員在將其轉換成副本之前總是要拆分資料庫,這樣,只有表才能使被複製。關於拆分Access 資料庫的概念,請參閱“在Microsoft Access 97中建立應用程式”的 第15章,第3節, 這些文檔在Access 97光碟片中都有。
複製之前沒有拆分資料庫,你會發現你的副本的大小會“膨脹”。這是因為,你做的每一個到格式或模組的改變,如,被放在隱藏表中,這樣就變成了需要被複製的資訊。想象一下,你努力30次正確地去做某個模組的代碼工作。這些改變(除最後一個不必要外)都被發送到所有的副本,開發人員在複製前不能拆分就會碰到一個惱人的問題:複製工作正確進行一會兒後(也許甚至幾個月),模組會突然不能工作,或表單不能開啟。
所以,你怎麼能拆分已經被複製的資料庫?我在這兒建議你根據以下的步驟去做。
不要使用拆分資料庫嚮導。這是因為,它正好用了錯誤的方式來拆分資料庫,這樣,你的資料表就不能再複製了---它把表移到新的檔案中去了,並把對象的剩餘部分放到了副本裡,而我們要做的,是要把資料表放在副本裡,並把其他的對象移到新的未複製的資料庫檔案中。那樣的話,後端的剩餘部分是可以複製的,作為當前副本設定的一部分,前端現在則是獨立資料庫,只能被拷貝到每一個應用程式使用者。
要確保你的副本都要同步,你就要知道,萬一你損壞了設計主,而你已經更新了資料。
建立新的Access資料庫檔案,該檔案會在前端。根據Microsoft例子,你可以添加"_fe"到初始資料庫名,雖然它確實對你要調用的並無關緊要。
把這個新的檔案開啟,從設計主輸入所有的查詢,表單,報表,宏以及模組。如果你把開關板置於適當的你可以使用開關管理器控制的位置,那麼,你也需要輸入開關板項目表。
如果你已執行了資料庫安全,那麼,你會丟失在第4和第5步驟中輸入或串連的所有對象中的容許設定。所以,開啟設計主,將這些容許設定拷貝到新的檔案(即,前端)。
現在,你需要添加代碼到前端,該前端更新了串連到使用者的本機複本。在開發人員解決方案資料庫中,你會發現做這些工作的協助。它隨Access 97作為樣本資料庫出現。從“使用多資料庫”分類中選擇“啟動串連表”。
分布前端到你的所有使用者。記住,該檔案不應再被複製。你只須為需要的人拷貝即可。叫你的使用者切換到使用前端。當你確定他們現在在使用前端時,你就可以繼續下去,把設計主轉換成後端(下兩個步驟),便於他們同步下次時間,他們的副本也將變成後端。 ( 素材 )
開啟設計主,刪除你在第4步驟中輸入的所有對象。
兩次緊緻設計主,然後使其與你的其他副本同步。
注意:如果你想繼續Microsoft在其拆分資料庫嚮導中使用的準確的命名規範,那麼,你就不得不通過添加"_be"到其檔案名稱來重新命名你的後端副本。最安全的辦法是在複製管理器裡,用移動副本命令來做。