2012-04-24 30 views
0

在我的應用程序編程經驗中,我一直使用存儲應用程序數據的後端的SQL Server(或Access)數據庫。我現在正在研究一些適用於關係數據庫的業務需求,但它們需要將其存儲在應用程序將創建並加載的單個可移植自定義文件中。我知道這是一個非常常見的概念,它可以讓應用程序保存單個文件或文檔,以便以後加載並繼續使用,但我不確定如何通過複雜的數據實現此目的。想到加密xml,但是如果我不得不首先將它加載到對象中,那麼使用它會非常緩慢,或者可能會消耗大量內存。有什麼選擇?將關係數據存儲在單個專有文件中

+2

SQLite呢?其基於單個文件的RDBMS – Habib 2012-04-24 19:42:33

+0

SQL Server Compact Edition不適合您嗎? – spender 2012-04-24 19:45:10

+0

爲什麼你必須加密xml? – 2012-04-24 19:46:16

回答

2

當在.NET環境中運行時,我認爲SQL Server Compact值得研究。它基本上是一個迷你SQL Server,不需要安裝和配置爲服務,而是一個你參考的dll。您可以使用正常的數據訪問工具,如linq-to-sql和實體框架。

+0

+1擊敗了我,並且他已經熟悉MSSQL家族。 – 2012-04-24 19:47:39

+0

@Anders Abel - 這聽起來像是會起作用的,除非以下任何一條都不正確。 1. .sdf可以在運行時創建。 2. .sdf可以使用自定義文件擴展名。 3. .sdf可以使用密碼來阻止擁有該文件的某人打開該文件並獲取數據訪問權限。我讀過這些都是真的,請讓我知道如果這是不正確的。 – xr280xr 2012-04-24 21:12:15

4

我建議你使用SQLLite或Firebird嵌入式數據庫。還有其他選項。它們支持單文件使用,並且會爲您的未來版本模式(升級SQL腳本)提供明確的升級途徑。

我不明白加密如何影響到這一點。

+0

相信這也是一個有效的答案,但我更喜歡這種情況下的MS方法。 +1謝謝。 – xr280xr 2012-05-07 22:29:07

相關問題