4

C 実装 (python bsddb モジュール) によって作成された berkeley db ファイル (*.bdb) があります。Berkeley Db の純粋な Java 実装でこのファイルを読み取ることは可能ですか? berkeley db java edition (je) を使用して読み込もうとしましたが、できませんでした。je は、berkeley データベースを検出できなかったという例外をスローします。berkeley db ファイルは、異なる実装間で相互運用できませんか? もしそうなら、なぜですか?

4

3 に答える 3

5

いいえ。

Berkeley DB Java Edition FAQによると、 BerkeleyDBとBerkeleyDB Java Editionは、ファイルレイアウト構造が異なるため、相互に互換性がありません。

于 2008-10-12T17:27:25.827 に答える
2

3つの異なる製品があることに注意してください

  1. Berkeley DB -- C 実装
  2. Berkeley DB Java Edition
  3. バークレー DB XML

ウィキペディア参照

確かに、「Berkeley DB」と「Berkeley DB Java Edition」のファイル形式は異なります (互換性がありません)。ただし、「Berkeley DB」製品は、JNI を介して Java API を提供します。そのため、Java から C 実装で記述されたデータ ファイルにアクセスすることは可能ですが、「Berkeley DB Java Edition」ではアクセスできません。

于 2011-03-08T14:58:50.297 に答える
0

明確な答えは調べていませんが、同じ経験があります。pythons bdb で作成され、cli utils でアクセス可能なデータベースは、Java API ではまったく検出されません。逆もまた然りでした。

于 2008-10-12T17:08:35.630 に答える