WPF应用程序的数据库功能:SQLite,SQL CE,其他?

时间:2008-09-15 21:24:51

标签: wpf sqlite sql-server-ce

我想扩展具有数据库功能的WPF应用程序。你会建议哪个数据库引擎?为什么? SQLite,SQL CE,其他?

6 个答案:

答案 0 :(得分:19)

根据应用程序的使用情况,我建议使用SQL Lite ,因为它不要求您安装任何其他软件(SQL CE或Express等通常需要单独安装)。

本文底部提供商链接中SQL Lite最重要的好处列表:

  

SQLite是一个小型的C库   实现一个独立的,   可嵌入的零配置SQL   数据库引擎。功能包括:

     
      
  • 零配置 - 无设置或   需要管理。
  •   
  • 实现大部分SQL92。 (特征   不支持)
  •   
  • 完整的数据库存储在   单个磁盘文件。
  •   
  • 可以自由共享数据库文件   在不同字节的机器之间   订单。
  •   
  • 支持最多2 TB的数据库   (2 ^ 41字节)大小。
  •   
  • 小代码占用:小于30K   C代码行,小于250KB   代码空间(i486上的gcc)
  •   
  • 比流行的客户端/服务器更快   最常见的数据库引擎   操作。
  •   
  • 简单易用的API。
  •   
  • 自足:没有外在的   的依赖关系。
  •   
  • 来源属于公共领域。   用于任何目的。
  •   

由于您使用的是WPF,我可以假设您至少使用的是.NET 3.0。然后我会建议使用.NET 3.5 SP1(与.NET 3.5大小相同但包含一系列性能改进),其中包括LINQ。

但是,在使用SQLite时,您需要使用以下应提供LINQ支持的SQLite Provider:An open source ADO.NET provider for the SQLite database engine

答案 1 :(得分:18)

我在我的WPF应用程序中使用了SQL Compact Edition,我很满意我的决定。一切正常(因为WPF和SQLCE都是MS,它们可以很好地协同工作),并且运行时的安装足够小,足够平滑以满足我的需求。我通过visual studio创建并修改了数据库。

答案 2 :(得分:9)

只是抛出不同的意见,我们去年一直在使用SQL Compact Edition,并且大体上都满意。配置是cake,它的行为与常规MS SQL数据库非常相似。有些东西缺失,比如触发器和存储过程,但SQL 3.5 CE几乎包含了我们所需要的一切。它大约需要2Mb的.dll才能安装。它提供数据库加密,事务和支持VS的类型化数据集设计器(3.1有一些问题,但CE 3.5很棒!)。

答案 3 :(得分:3)

SQL CE DLL可以打包到您自己的应用程序中,无需单独安装。但是MS提供了一个默认的安装包,如果你不想了解设置......等等。

更多,SQL CE支持私有部署。

答案 4 :(得分:2)

SQLite是一个非常好的产品,虽然我错过了PostgreSQL的功能。您可以像Berkeley DB一样考虑其他特别是非SQL的数据库。

/阿伦

答案 5 :(得分:0)

我同意SQLite是要走的路。 Subsonic 2.1现在也包括SQLite支持。