Delphi嵌入式DB

时间:2011-02-06 14:18:47

标签: database delphi

我需要一个 SMALL / LIGHTWEIGHT 数据库控件(可能作为单个PAS文件提供),我可以将其直接集成到我的应用程序中。我需要在少量表中存储相对少量的数据,并且我想快速访问某些列。我知道Delphi 7有那么好的BDE,但我不想让用户在安装过程中遇到麻烦。

我使用Delphi 7。


修改
我想我问了一个错误的问题。所以,这就是我真正需要的东西:
How to store dynamic data (unknown number of fields) to a file?

10 个答案:

答案 0 :(得分:9)

NexusDB提供免费的embedded版本。这是Example

答案 1 :(得分:8)

如果您承诺不再在应用程序中包含任何依赖项,请查看TClientDataSet

我推荐某种“嵌入式”数据库。示例:为了将Firebird用作嵌入式数据库,您至少需要发送一个DLL。您可以将该DLL放入安装程序中,以便用户无需安装任何内容。

答案 2 :(得分:7)

作为替代方案,免费软件TDbf数据库怎么样?它直接编译到您的应用程序中,对于轻量级用途是可靠的。

此外,如果您已经足够大,可以记住DBase是标准桌面数据库平台的日子,那么您可能已经知道如何使用它。 : - )

它在http://tdbf.sourceforge.net

(如果最近似乎没有很多活动,那就是因为它已经存在了10年并且非常稳定)。

只是一个想法。

答案 3 :(得分:7)

您可以尝试SQLite。它是一个优秀的嵌入式数据快速,可靠,你不能打败价格(开源,公共领域)。有许多Delphi包装器,或者如果你想要一个轻量级的解决方案,你可以直接使用该库。

答案 4 :(得分:4)

两个开源解决方案(从Delphi 6到XE):

  1. 一个ORM oriented solution,可以使用SQLite或纯Delphi存储来存储数据。它既可以作为独立服务器,也可以作为客户端/服务器。

  2. 一个very fast pure Delphi NoSQL table storage engine。样本基准测试能够在800毫秒内存储1,000,000条带有一个整数和一个文本字段的记录(创建自动索引)。您可以创建自己的表列,然后通过Late-Binding访问字段内容。

答案 5 :(得分:3)

如果要花一些预算,请尝试AnyDAC。它提供本机和嵌入式SQLite访问,因此您甚至不必发送外部DLL。

答案 6 :(得分:1)

我试过(按轻量级排列):

  • NexusDB - 商业化,对我需要的东西来说太大了;增加了一些开销
  • DISQLite - 似乎很强大;难以使用
  • kbmMemTable - 商业版,未经审查的用户(除非您购买文档,否则不能进行试用,首先是符合TRIAL概念的目的)
  • TDBF - 免费但不再维护;它也完全没有文件
  • Synopse BigTable - 似乎是我需要的解决方案。它仅包含2个PAS文件。

在某些情况下,自定义系统可能比普通系统更合适。所以,根据我的需要,我会定制自己的系统。因为我知道数据的大小/类型,所以我可以创建完全符合我数据的字段。 DB大小将以这种方式更小且更快(加上它是免费的)。 :)

解决方案:How to store dynamic data (unknown number of fields) to a file?

答案 7 :(得分:1)

答案 8 :(得分:0)

  1. 来自JVCL
  2. 的JvCSVDataSet和JvCSVBase
  3. kbmMemTable
  4. Embedded Firebird server
  5. jbDBF

答案 9 :(得分:-2)

虽然付费手册,但实际组件是免费提供的,包括一个非常广泛的演示应用程序,显示了许多功能。此外,互联网上有很多关于如何使用它的信息。 使用www.codenewsfast.com或google.com进行搜索。

最好的问候 金马森 kbm@components4developers.com