不需要额外安装的数据库

时间:2011-05-29 21:00:44

标签: sql database sqlite embedded-database sql-server-ce

我开发了C#应用程序,用于存储和检索SQL数据库中的数据。 但是当我的客户端必须部署应用程序时,他需要安装sql server express 2008,这就是它的要求。现在他希望安装该软件而不需要额外安装add-on.so我除了dot net framework之外不应该有任何东西额外安装。

我见过像SQL compact,SQL lite ,SQL CE and blackfishSQL这样的数据库,但我真的不知道他们是否需要额外安装,我需要做些什么才能根据所选数据库更改我的整个代码 我看了this 请帮帮我

3 个答案:

答案 0 :(得分:6)

我建议使用SQLiteServer Compact (SQL CE)。它们不需要额外安装。

另一个选择是在您的安装项目中包含SQL Server Express,因此如果需要,它将自动安装。

SQLite具有快速而强大的声誉 但是,如果您喜欢Microsoft产品并且已经在SQL Express中使用了所有内容,那么从开发工具支持的角度来看,SQL CE可能是更好的选择。

答案 1 :(得分:0)

SQLite是迄今为止通常考虑用于此类场景的最受欢迎的选项。它不需要任何额外的安装..数据库接口本身在一个DLL中可用,你需要与数据库交互的是接口DLL。至于移植应用程序所需的工作量,取决于您使用Sql Server特定SQL构造的程度。您的代码越接近ANSI SQL,移植它就越容易到任何其他ANSI SQL兼容的数据库,如SQLite。如果您在应用程序中使用ORM技术,通常会使任务变得更加容易,因为它们在您的客户端代码和数据库之间提供了额外的抽象层

答案 2 :(得分:0)

我确信原版海报不再需要这些信息了 - 但是为了其他人搜索同样的问题 - 让我自己添加一些。

我最近才将C#程序从使用SQL Express转换为SQL Compact - 与转换为SQLite项目相比,它相对容易。代码非常简单。在SQL Express中,您可以使用 SqlCommand ,这只是 SqlCeCommand 。很容易从一个转换为另一个。