Sql-Server
哪個數據庫最適合深度嵌入式數據庫或通過 C DLL?
我想要一個深度嵌入的數據庫。深度嵌入意味著伺服器由應用程序啟動並由沒有 tcp/ip 或 0 埠的應用程序關閉。考慮的主要特點是:
- 至少 10 GB 數據庫
- 數據庫加密和加密中的搜尋
- 全文檢索
- 可能通過線上更新數據庫$$ This is only additional benifit $$
- 必須有 C DLL
有許多可用的選項,例如 MySQL、Oracle、MSSQL。一個開源數據庫會很棒。
看看PostgreSQL,它有無限的數據庫大小,似乎有很多加密選項,支持全文搜尋和多種語言的介面(C 以及通過 libpg)。它也是開源的。有關更多資訊,請參閱 PostgreSQL 的 about-page。
嵌入式數據庫的典型選擇是SQLite。它確實包含FT 擴展(允許對數據庫外部的文件進行 FT 索引,而不是數據庫本身),並且第 3 方提供擴展,如SQLite Encryption。但歸根結底,SQLite 並沒有與成熟的獨立數據庫的功能相匹配的目標。MySQL 有一個嵌入式選項,但針對 OEM,請參閱MySQL as an Embedded Database。PostgreSQL 沒有嵌入式模式,也沒有 SQL Server。嵌入式 SQL Server 解決方案是SQL Server Compact Edition,它是一個不相關的產品。SQL Server Compact 僅支持加密作為加密數據庫選項(實際上與我連結的 SQLite 3rd 方擴展相同)並且沒有明確的 FT 功能。
至於線上可更新性,這個問題太模糊了。也許您應該首先閱讀有關數據庫同步框架之類的東西的工作原理,以了解“線上可更新性”功能所涉及的內容。