Availability::- use_module(library(bdb)).(can be autoloaded)
 bdb_get(+DB, ?Key, -Value) is nondet
Query the database. If the database allows for duplicates this predicate is non-deterministic, otherwise it is semidet. Note that if Key is a term this matches stored keys that are variants of Key, not unification. See =@=/2. Thus, after bdb_put(DB, f(X), 42), we get the following query results:
  • bdb_get(DB, f(Y), V) binds Value to 42, while Y is left unbound.
  • bdb_get(DB, f(a), V) fails.
  • bdb_enum(DB, f(a), V) succeeds, but does not perform any indexing, i.e., it enumerates all key-value pairs and performs the unification.
 bdb_get(+DB, ?Key, -Value) is nondet
Query the database. If the database allows for duplicates this predicate is non-deterministic, otherwise it is semidet. Note that if Key is a term this matches stored keys that are variants of Key, not unification. See =@=/2. Thus, after bdb_put(DB, f(X), 42), we get the following query results:
  • bdb_get(DB, f(Y), V) binds Value to 42, while Y is left unbound.
  • bdb_get(DB, f(a), V) fails.
  • bdb_enum(DB, f(a), V) succeeds, but does not perform any indexing, i.e., it enumerates all key-value pairs and performs the unification.