2011-12-12 120 views
2

作爲構建過程的一部分,我們必須創建Access ACCDB(2007)數據庫。該數據庫構成了我們應用程序的當前前端,並且必須(在其他原因下)在構建過程的初始階段構建。自動構建Access 2007數據庫

目前,這是一個我希望自動化的手動過程。我們的數據庫由許多表格,公式,查詢等組成。我相信我們實際上已經接近Access實際能夠處理的極限,所以我們儘量不向它添加任何東西。

我看了一下這個項目: http://buildmsaccessdb.codeplex.com/

,它似乎工作得很好。但是,在我們的項目中,我們也有一個ACD文件,它是一個包含許多與系統相關的表的二進制文件。當談到Access開發時,我絕不是一個嚮導。我剛接手處理構建過程的任務。

每當我使用上述項目來包含ACD文件時,我會得到COM互操作異常。我現在在我面前沒有錯誤信息,但如果它促進了原因,我可以發佈它。

我們使用的StarTeam作爲我們的源代碼控制和目前遇到的重大問題,努力創造我們從源頭控制系統數據庫時。我有時花費數小時才重試從源代碼管理中創建數據庫,因爲每次Access試圖導入ACD文件時都會出現未知失敗。

我們試圖停用訪問任何宏以及可能從數據庫階段的創建過程中被自動激活的ACD文件。我們懷疑這可能已經中斷了數據庫創建過程,但問題依然存在:我們只能在經過多次嘗試和部分純粹運氣之後從源代碼管理創建我們的訪問數據庫!我想通過自動化整個事情來補救。

你們當中有些人可能會指出,到最好的地方開始是要找到問題與提取從StarTeam的ACD(等)的源文件。我的(最初的)承擔這一點是,如果它歸結爲純粹的運氣,無論如何,我寧願讓它自動化,然後讓計算機浪費它的時間,試圖建立Access數據庫,然後讓我監視過程。

任何幫助或提示如何解決自動源代碼控制系統的構建中得到Access數據庫的問題(即持續集成)是最歡迎的。

當然,我也想就如何解決不能夠沒有一定量的好運氣來創建源代碼管理數據庫中的問題的建議。

回答

0

我們最終設法理清頭緒:

如果我們使用的二進制文件ACD作爲起點,創建我們的數據庫它的內容也將可一旦數據庫已導入。通過使用它作爲一個起點,我的意思是

  1. 複製ACD文件到相應的目的地
  2. 重命名ACD文件MyCompanyName.accdb
  3. 供應MyCompanyName。accdb作爲MS Access數據庫將文件導入到MSBuildAccess項目中

因此,不應該將ACD文件與其他文件一起導入,而應將其作爲起點。通過查看codeplex項目中的實際msbuild任務,這變得很明顯。

除了上述步驟外,我們在Ms Access中還有一個與UIRibbon類有關的生成錯誤。這可以通過創建MSBuildAccess項目文檔中提到的參考文件來解決(請參閱http://buildmsaccessdb.codeplex.com/documentation)。

現在,我們只需要在編譯我們的訪問數據庫時解決內存不足的問題。當我們減小Access項目的大小時,這很可能會消失。這是我們的「經驗」,我們的接入解決方案是什麼樣的訪問能夠在模塊,報表的形式,數量等方面的處理非常極限 參見該問題的更多信息這些引用:

  • http://help.lockergnome.com/office2/Create-accde-file-error_ftopict802934.html
  • http://stackoverflow.com/questions/1300632/compiling-an-access-2007-accdb- into-accde
  • http://bytes.com/topic/access/answers/518438-cant-create-mde
相關問題