2012-08-16 72 views
0

我有一個使用本地SQLite3數據庫的C#應用​​程序。我需要用應用程序打包數據庫。我目前只是從桌面與數據庫進行交互。我只是使用數據庫路徑從桌面連接到數據庫。C#Visual Studio本地數據庫

我應該在哪裏存儲這個數據庫,這樣當我打包並分發它時,應用程序可以訪問這個數據庫?

回答

4

你應該把你的數據庫文件放在一個讀/寫文件夾中。 準確的位置取決於數據庫的使用情況。 如果每個計算機用戶都應該能夠使用該數據庫,然後選擇

C:\programdata\yourfolder 

如果你的程序的每個用戶都有自己的數據庫,然後在用戶配置文件中的文件夾會好

C:\users\username\documents\yourfolder 

c:\user\username\appdata\local\yourfolder 

其中yourfolder將是你的選擇涉及到您的應用程序名稱的文件夾名稱 和用戶名是您的應用程序

當前安裝的用戶,這些路徑與操作系統,你部署應用程序有所不同的名字,不同記得使用Environment.GetFolderPath方法和Environment.SpecialFolder所以從操作系統免費enum

當然,您始終可以選擇將數據庫安裝在您安裝期間創建的特定文件夾中,如C:\ database,或者如果您計劃在網絡位置共享數據庫,請選擇現有的共享名或創建一個新的一。

在安裝工作結束時,您需要使用存儲數據庫文件的值更新存儲在配置文件中的連接字符串。

+0

這是我應該使用的方法,如果我不用代碼創建數據庫表?我有一個已經半填充的數據庫 – Vikings 2012-08-16 13:09:05

+0

是的,準備您的數據庫文件進行分發並使用安裝工具來選擇放置文件的位置。相同的設置工具應該允許你更新你的應用程序的配置文件 – Steve 2012-08-16 13:19:35

+0

只是澄清一下,準備數據庫文件和使用安裝工具是什麼意思? – Vikings 2012-08-16 13:39:44

相關問題