【问题标题】:Replace SQLite with SQL Server?用 SQL Server 替换 SQLite?
【发布时间】:2010-07-31 08:08:16
【问题描述】:

有谁知道在多线程环境中使用 SQLite 是否是一个好的解决方案。 我想用更简单和内置的数据库替换 SQL Server,因为不需要提供这么大的服务器数据库。使用 4-5 年后,假定的 DB 最大大小为 4 GB。内置数据库正常吗?会影响性能吗?

【问题讨论】:

  • SQL Server 还是 SQL Server Compact Edition?精简版是可嵌入的。 SQL Server 非精简版和 SQLite 之间有天壤之别...

标签: sql sql-server sqlite


【解决方案1】:

这取决于您将使用的查询类型。如果查询是带有普通连接的简单选择,那么 SQLite 可以做得很好,但我认为使用 e 仍然会更好。 G。 Firebird 2.5 稳定版发布时(RC3 现在可用)。您可以使用更丰富的 SQL。我不知道有多少大容量负载对您很重要,但 SQLite 和 Firebird 在这方面都不是很强大。如果您需要良好的批量插入性能和低成本,那么您应该考虑 PostgreSQL 或 MySQL。我最近偶然发现了一个非常有趣的数据库,名为CUBRID。到目前为止我只安装了它,所以我无法判断它的好坏,但它确实值得一看。 您可能还想查看这篇维基百科文章: http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

【讨论】:

    【解决方案2】:

    我不知道您在这里谈论的是哪个发行版。我只使用过 SQLite.NET,而且我知道它在多线程应用程序上运行良好。

    它也可以部署在客户端-服务器系统上,所以您完全不用担心。

    考虑到 Vinko 关于“真实”数据库的说法,您可以忽略他。 SQLite 真的物有所值。

    如果您正在使用 .NET,您可能会发现此链接很有用: http://sqlite.phxsoftware.com

    【讨论】:

    • “真正的”数据库位并不是要破坏 SQLite,这对于它的本质来说是很棒的,并且它的目的不是替代完整的 RDBMS 服务器,因为它缺乏,设计!,“真实”数据库具有的许多功能。
    【解决方案3】:

    根据documentation SQLite 是线程安全的,但有一些警告。

    【讨论】:

      【解决方案4】:

      您可以在多线程环境中使用 SQLite,但当且仅当您构建它的特殊版本时(并确定您将使用它的库是否支持它,如果不支持,则对其进行调整。)所以,假设您的库支持多线程 SQLite,如果您确实需要数据库的高级并发性,您可能更喜欢使用“真实”数据库。无论是 MSSQL 还是任何其他问题都超出了问题的范围。

      以 MySQL 和 SQL Server Express 为例。

      如果你的并发水平低,SQLite 可以应付。

      【讨论】:

        【解决方案5】:

        我还建议您查看CUBRID database。它对 Web 应用程序进行了很好的优化,并且易于学习。

        【讨论】:

          猜你喜欢
          • 2021-04-28
          • 1970-01-01
          • 2022-01-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-05-09
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多