puis-je utiliser le fichier bdb (berkeley db) créé par c implémentation (python bsddb) par oracle berkeley db java edition?

StackOverflow https://stackoverflow.com/questions/195657

Question

J'ai un fichier berkeley db (* .bdb) créé par l'implémentation C (module python bsddb). Est-il possible de lire ce fichier avec une implémentation Java pure de Berkeley Db? J'ai essayé de le lire en utilisant berkeley db java edition (je) mais je n'ai pas pu. je lève une exception en disant qu'il n'a pas pu détecter la base de données Berkeley. Les fichiers berkeley db ne sont-ils pas compatibles entre différentes implémentations? Si oui, pourquoi?

Autres conseils

Notez qu'il existe trois produits différents

  1. Berkeley DB - la mise en oeuvre C
  2. Berkeley DB Java Edition
  3. Berkeley DB XML

voir, Wikipedia

Il est vrai que la base de données "Berkeley DB" et "Berkeley DB Java Edition". avoir un format de fichier différent (c’est-à-dire incompatible). Cependant, la "Berkeley DB" Le produit fournit une API Java via JNI. Il est donc possible d’accéder à un fichier de données écrit par l’implémentation C à partir de Java, mais pas avec "Berkeley DB Java Edition".

Je n'ai pas cherché la réponse définitive, mais j'ai la même expérience. Une base de données créée avec pythons bdb, et également accessible avec les cli utils, n'est pas du tout détectée par l'API Java. L’inverse était également vrai.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top