2012-06-20 34 views
2

對於我的uni項目,我製作了一個使用MySQL數據庫的C#程序。現在看看它,我認爲選擇MySQL並不是最好的解決方案......至少從用戶的角度來看..是的,這個程序會有真正的用戶(對我來說是歡呼!),但是安裝過程是有點問題,因爲用戶必須安裝所有依賴項(C++運行時,.net環境,MySQL,ODBC連接器,MySQL和數據庫)。雖然我創建了一個small manual,但我更願意提供更簡單的東西。 雖然我找到了Auto installer,但它所做的只是複製文件。 iExpress.exe似乎只運行一個文件...並且仍然有一個安裝數據庫的問題,而不需要在MySQL工作臺中打開mwb(我確實有一些.sql文件,實際上用於將它轉發到數據庫) 。你們可以給我任何指示嗎?使用MySQL數據庫自動安裝.net項目

編輯:我已經開始玩弄圍繞在VS http://support.microsoft.com/kb/307353創建安裝包,我不認爲我可以設置順序有壽,仍然沒有解決數據庫的問題installaton

EDIT2:看來, MySQL在這裏是死路一條......有沒有一種簡單的方法將我當前的數據庫移動到SqlLite或我可以嵌入的東西?

+0

是否需要爲每個客戶端安裝MySQL服務器? – Namphibian

+0

不幸的是。此外,它應該沒有互聯網接入工作。 – Yasskier

+0

您可能無法將項目移至嵌入式MySQL數據庫模型? HTTP:// WWW。mysql.com/oem/faq.html。這會很快簡化你的安裝。我不確定是否有安裝程序能夠幫助您按照需要簡單安裝產品。問題是MySQL服務器安裝本身是一個設置。 – Namphibian

回答

0

您可以從mysql.com下載用於ODBC的mysql驅動程序,並配置應用程序使用ODBC連接作爲替代方案。

http://dev.mysql.com/downloads/connector/

如果你不會使用CLIEN服務器架構,當然,你不應該使用客戶端 - 服務器DBMS。使用SQLite或SQL Server CE

2

根據我們上面的評論跟帖:

有每個客戶端上一個MySQL服務器實例是有點矯枉過正。這種方法存在一些問題。

  1. 安裝和配置將是一場噩夢。
  2. 數據庫服務器的維護也會產生問題。服務器的備份,安全和維護現在需要DBA去客戶端。

您需要查看嵌入式解決方案。一些解決方案可能是SQLLite,SQL CE甚至是老式的Berkley DB。如果存儲在客戶端的信息本質上不是關係型數據,並且您不需要符合ACID標準的數據庫,則可能需要考慮將其存儲在普通的舊文本文件甚至XML文件中。

本質上你正在處理一個斷開的記錄集模型。如果應用程序不需要連接到服務器。 C#允許您將記錄集存儲在XML文件中。例如,您可能有一臺中央MySQL服務器將記錄下載到客戶端應用程序,並讓客戶端在本地處理記錄。

當客戶端完成其工作後,您可以(如果網絡可用)將這些更改發回MySQL服務器。

壞消息是要付出努力做到這一點。它不會是重大的返工,但不會輕微。

相關問題