.NET 应用程序的嵌入式数据库

Posted

技术标签:

【中文标题】.NET 应用程序的嵌入式数据库【英文标题】:Embedded database for .NET application 【发布时间】:2011-04-21 16:05:48 【问题描述】:

我需要选择一个数据库作为 VB.NET 应用程序的后端。

必须:

支持XCOPY部署 服务和桌面应用程序可以同时访问 支持 SQL 语法和数据类型 适用于 Web 应用程序 (ASP.NET)

我正在研究 Firebird(嵌入式版本不鼓励使用 Web 应用程序?)和 SQL CE 4

有什么建议吗?

【问题讨论】:

【参考方案1】:

SQL CE 4 可能更适合 .NET 应用程序,并且将在 EF4 等工具中获得最大的支持。

Orcs Web(一位受人尊敬的主机商)似乎认为它很不错:

4 Reasons Microsoft SQL Server CE is a Great Hosted Database Option

沿着 SQL CE 4 之路走下去的一个论据是,如果您需要升级到完整的 SQL Server,那么这有点不费吹灰之力。

另一种选择是使用普通的旧 Access 数据库,其好处是您可以将其加载到 Access 中或将文件传递给拥有 Access 的其他人。

另一个替代的轻量级和可移植数据库是SQLite。您可以从以下网址下载 .NET 驱动程序:

System.Data.SQLite - An open source ADO.NET provider for the SQLite database engine

【讨论】:

【参考方案2】:

总是有 SQLite,它已经存在了一段时间:

http://www.sqlite.org/

我实际上喜欢 SQL CE 4,因为它可以集成到 Visual Studio 2010 for RAD 中,而且功能集看起来很有前途。

如果 SQLite 是您的首选,您可能还想了解一下可用的 ADO.NET 提供程序。

http://sourceforge.net/projects/sqlite-dotnet2/files/

【讨论】:

以上是关于.NET 应用程序的嵌入式数据库的主要内容,如果未能解决你的问题,请参考以下文章

可脱离网络运行的 .net 嵌入式数据库

Firebird 是适用于 ASP.NET 的良好嵌入式数据库吗?还有哪个?

嵌入式 Mysql (libmysql.dll) 和 C# & Asp.Net

寻找有关嵌入式 .NET 数据库(例如 db4o、NHibernate 或 RavenDB)的指导

在 .NET 中使用嵌入式 firebird 数据库

适用于 .Net 的良好嵌入式数据库解决方案(如 SQLite)