[ Recorded Database | The ECLiPSe Built-In Predicates | Reference Manual | Alphabetic Index ]
recordz(+Key, ?Value, -DBRef)
Records the term Value at the end of key Key in the indexed database.
- Key
- An atom or compound term.
- Value
- Any prolog term.
- DBRef
- A variable.
Description
Used to record any prolog term Value at the end of the indexed database
entry associated with the key Key. Unlike recordz/2, this predicate
delivers a so-called database reference in DBRef which is a unique name
for the indexed database entry that is created. Note that it is not a
number! In the case of compound terms, all keys of the same name and
arity are treated as equal.
If backtracking occurs through the call of recordz/3 the associated
Value is not removed from the indexed database.
Modes and Determinism
Modules
This predicate is sensitive to its module context (tool predicate, see @/2).
Exceptions
- (4) instantiation fault
- Key is not instantiated.
- (5) type error
- Key is neither an atom nor a compound term.
- (5) type error
- DBRef neither a variable nor a database reference.
Examples
Success:
[eclipse]: recordz(whiskey,jameson,Ref1),
recordz(whiskey,bushmills,Ref2).
Ref1 = 98518
Ref2 = 98538
yes.
Error:
recordz(Key, anything, Ref). (Error 4)
recordz("key",anything, Ref). (Error 5)
recordz(key,anything, 99). (Error 5)
See Also
recorda / 3, recorded / 3, erase / 1, referenced_record / 2