2012-12-31 25 views
2

我有一個簡單的問題。我對開發世界很陌生,並且創建了一些相當不錯的訪問數據庫。這些數據庫面向小企業主。目前,我有一些小型企業對我已經創建的數據庫感興趣,並將其作爲潛在的產品購買。如何以及如何打包訪問數據庫的最佳方式,以便用戶不必擁有完整的訪問副本,並且還可以在將來更新產品。例如版本1.1可能是啓動版本,但1.2可能在數據庫的啓動屏幕上包含日期和時間?將Access數據庫部署爲產品

如果需要更多信息,請讓我知道我會很樂意上傳更多信息。

,我使用Access數據庫訪問2013年

回答

3

下面是一個簡單的設置已經爲我工作:

  • 轉換爲.accde。
  • 爲用戶提供訪問運行時。
  • 拆分數據庫。
  • 將更新的前端放入與客戶端共享的Dropbox帳戶。
  • 指導客戶端如何在啓動屏幕加載事件時使用以下代碼進行提示時查找後端。

Private Sub Form_Load() On Error GoTo frm_error Dim RS As Recordset Dim cn As Database Set cn = CurrentDb Set RS = cn.OpenRecordset("tblX") 'Insert name of any table in backend RS.Close Exit Sub frm_error: If MsgBox("Database cannot be found. Advanced Users press OK to link the tables. Otherwise, notify an admin and press cancel to close the xProgram.", vbOKCancel) = vbOK Then RunCommand acCmdLinkedTableManager Else DoCmd.Quit End If End Sub

我會注意到,我已經因爲使用Access作爲後臺停止並切換到亞馬遜RDS託管的SQL Server。這對於安全性,備份,前端升級和異地維護來說無疑是個奇蹟(儘管我會強調你永遠不會得到一個使用訪問作爲前端的完全安全的系統)。

3

這是一個非常寬泛的問題。關於該主題的書籍的全部章節都已經寫入。我只是給你的短,短的解釋:


如何以及什麼纔是去包裝一個Access數據庫,這樣用戶不必訪問的完整副本的最佳方式?

這裏要做的最簡單的事情就是將數據庫文件編譯爲.mde或.accde。這不是防彈的,但會阻止臨時用戶對您的產品進行逆向工程。

從Access 2007開始,Access Runtime可免費使用。使用運行時,用戶將無法訪問數據庫窗口(列出所有表,查詢,表單,報表等的事物),因此您需要爲此提供備用導航。


而且也使該產品能夠在未來

更新我讀過有關託尼·託斯的Auto FE Updater好東西。我沒有親自使用它(我使用了Inno Setup和我寫的其他自定義腳本的組合),但是我聽說它適用於你正在談論的內容。


最後一點。 在發佈它之前,您絕對必須將數據庫分爲前端和後端。

+1

是的,前端/後端分離至關重要。它允許您部署新版本的應用,同時保持客戶數據在後端不變。您必須實施一種機制,允許應用程序在啓動時自動鏈接後端表,因爲後端的文件路徑很可能與您的開發PC上的文件路徑不一樣。 –

+0

謝謝,所以如果我打算將數據庫打包到拇指驅動器上以進行部署和安裝,這是否是確保安裝路徑始終相同的好方法? –