31.8 Exporting and importing a database

Since the database format of a Berkeley DB may change from version to version it may become necessary to migrate a database when upgrading. To this purpose there are two predicates available: db_export/[2,3] and db_import/[2,3] (see The Predicates).

The export/import feature was introduced in SICStus 3.12.0, but in that version you have to use bdb:export/[2,3] and bdb:import/[2,3]. Neither is exported from the bdb module, but can be used with module prefixing.

Since the bdb interface uses a custom hash function (see Berkeley DB), the standard Berkeley DB migration tools will not work.