【问题标题】:Stand alone database for Windows Application (WPF) [closed]Windows 应用程序(WPF)的独立数据库 [关闭]
【发布时间】:2011-07-21 17:06:55
【问题描述】:

我创建了一个简单的(商业)WPF 应用程序,并希望将它与可以安装在客户本地计算机上的数据库一起分发。

什么数据库最好用?

我正在考虑使用 SQL Server Epress Edition 2008。我知道 10 GB 的限制,但这已经足够了,没有问题。

我没有为 Express 选择 100% 的唯一原因是我不知道如何让我的客户备份数据库。

我的同事一直告诉我使用 MS Access,但我不知道这是否是一个好的选择,因为我想使用存储过程和视图。

请告诉我你正在使用什么,或者你可以给我建议......

【问题讨论】:

  • 我同意其他人的观点,即 SQLite 对您的目的有好处,但如果您对 SQL Server Express 的唯一担心是进行备份,您应该看到例如"How can I schedule a daily backup with SQL Server Express?".
  • SQL Server Express 2008 有 4 GB 的限制 - 2008 R2 版本将其提升到 10 GB

标签: sql-server wpf database ms-access


【解决方案1】:

SQLite 是一个不错的选择。有System.Data.SQLite开发的ADO.NET提供程序

还有一个不错的免费 SQLite 编辑器:SQLite Administrator

备份就像复制 SQLite db 文件一样简单。真的。

【讨论】:

    【解决方案2】:

    估计的数据量是多少?

    对于小型数据库,SQLite 可能是一个不错的选择 - 它轻巧、快速、开源并且不需要额外的软件。如果需要,它甚至支持加密。

    备份非常简单,因为 SQLite 数据库由单个文件组成。


    Ruutert:数据库大小高达 500 mb:

    这个大小对 SQLite 来说应该没问题。我们使用高达数 GB 的数据库。大型数据库的唯一问题是,真空(如重组/压缩未使用的空间)所需的时间与数据库越大(但其他数据库类型相同)


    Ruutert:SQLite 的缺点?

    您可能会遇到高并发问题(大量并行数据库访问)。此外,如果您的工作量如此庞大以至于您考虑将数据库管理器移至另一台服务器(从应用程序服务器中分离出来),我也会考虑使用面向客户端-服务器的数据库管理器。

    但是当您考虑使用功能有限的 SQL Server Express 或 MS-Access 时,这应该不是问题。另一方面,您的优势在于您只需要一个小 dll(或将其静态编译成您自己的),而不是安装一个完整的数据库管理器。

    【讨论】:

    • 我们使用完整(网络)版本已有 5 年了,最大 dbsize 约为 500 MB
    • SQLLite 也有一些缺点吗? :)
    • 我在答案中移动了我的 cmets。
    • 大家好,我选择了 SQL CE(精简版),它运行良好,易于安装和备份!
    【解决方案3】:

    嵌入式数据库(如其他回答者已经提到的 SQLite)听起来是您的正确选择。

    既然你一直在使用 .net,那么微软的 SQL Server Compact 怎么样?
    (也是一个嵌入式数据库)

    【讨论】:

    • SQL Server 精简版。仅适用于开发人员?
    • SQL CE 不仅适用于开发人员。它是一个独立的、紧凑的 sql 服务器。 SQLite 是 SQL CE 的替代品。
    • 好的,我只是一个 (.NET) 开发人员,不是数据库专家。大多数时候,我从事的项目,已经安装了 SQL SERVER,这是我第一次在带有独立 DB 的 windows (WPF) 项目上工作
    • +1 用于推荐 SQL Server Compact Edition。新版本 4 确实是一款不错的软件!一个文件,易于部署,所有库都包含为 .NET 程序集 - 太好了!
    【解决方案4】:

    SQL-CE 不包括存储过程。

    SQLite 通常是被选中的那个。不过也有VistaDB

    您可以随时查看 NoSQL 或 OO 数据库:

    请注意,其中一些可能需要单独的 DLL 才能在 .NET 代码中公开提供程序。

    【讨论】:

      猜你喜欢
      • 2013-02-28
      • 1970-01-01
      • 1970-01-01
      • 2012-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多