我正在寻找一个可以运行 SQL 语句而无需安装数据库服务器的数据库。 IE。我需要能够选择/插入/更新仅给定数据库文件和任何外部库的数据库。

这是我的情况:

  • 我正在使用 C++ 来解析一些格式奇怪的二进制文件,
    我想将它们存储到某种类型的数据库中以提供更多
    方便地访问数据。
  • 一旦文件被插入到数据库中,我将使用 C#
    编写一个界面/GUI,用户可以通过它与数据库进行交互。
  • 我使用 C++ 来提高读取文件的速度,因为
    我已经写了那部分。
  • 我正在使用 C#,因为它更容易进行 GUI 编程。

  • 以下是我的要求:
  • 数据库必须提供一种仅使用外部库(无需安装)在 C++ 中运行命令的方法
  • 我应该能够将数据库移动到任何(类似 [Windows])计算机并运行我的应用程序

  • 我相信使用 ADO 或 JET 或类似方法的 MS Access *.mdb 文件是可能的,但是,我想听听一些替代方案。请在您的答案中提供数据库和 C++ 引擎/库。

    我的优先事项是:
  • "Lite"-ness
  • 性能(插入/选择的速度)
  • 客户端代码的简单性(即设置的容易程度)

  • 谢谢你们。

    最佳答案

    在这里使用 SQLite 不会出错。

    它足够小,可以嵌入到许多应用程序中(例如,请参阅 here 以获取从 Photoshop 到 Apple Mail + Safari、Dropbox、Firefox、Chrome、Skype 等的著名应用程序列表),但又足够完整以涵盖您可能会遇到的大多数 SQL需要。也有很好的支持,并且在 API 和语言方面的覆盖范围很广。

    它可能存在锁定和多次写入访问的问题。但是对于单个客户端,它应该可以正常工作。

    10-08 08:21
    查看更多