2011-01-13 104 views
0

做berkeley db有自动增量吗?autonicrement berkeley db,或者列表

我使用的是测试Java,

我看到的例子:在这里笔者使用StoredSortedMap处理数据collections.ship.tuple.Sample,所以他需要每次把一把钥匙。

我想知道伯克利是否有自动增量的东西。

或者,如果有一种列表的存储和检索...

回答

4

大卫Segleau,伯克利DB这里产品管理总监。一般来说,我们建议人们在Berkeley DB论坛上提问。您会在那里找到一个活跃的Berkeley DB应用程序开发人员的大型社区。

您的问题的简短答案是Berkeley DB具有自动递增服务。你只需要决定你想如何使用它们。这些选项包括:

  1. 将代码放入您的应用程序中。由于BDB是一个库,并且它已链接到应用程序中,因此许多人只需控制应用程序本身内的自动增量密钥生成。当然,如果你正在开发一个多线程或多进程应用程序,这可能会更复杂些。
  2. 使用伯克利DB序列来管理自动增量。如果您使用基本的键/值对API或Collections API(如您的情况),您可以创建一个BDB序列,调用相应的例程以获取下一个值,然后在写入之前将该值分配给键记录。由于BDB序列在事务上受到保护并在BDB环境中起作用,因此BDB库将处理任何多线程或多进程问题。您可以在BDB参考指南第19章和Java API Programmers Reference Guide中找到有关BDB Sequences的更多信息。
  3. 如果您使用DPL(直接持久层)API,则可以将主键定义为序列。在put()操作期间,DPL将自动处理递增键值。

我希望这有帮助。

问候,

戴夫