Next: Catalog Representation, Previous: Relational Infrastructure, Up: Relational Infrastructure [Contents][Index]
A base-table is the primitive database layer upon which SLIB relational databases are built. At the minimum, it must support the types integer, symbol, string, and boolean. The base-table may restrict the size of integers, symbols, and strings it supports.
A base table implementation is available as the value of the identifier naming it (eg. alist-table) after requiring the symbol of that name.
(require 'alist-table)
Association-list base tables support all Scheme types and are suitable for small databases. In order to be retrieved after being written to a file, the data stored should include only objects which are readable and writeable in the Scheme implementation.
The alist-table base-table implementation is included in the SLIB distribution.
WB is a B-tree database package with SCM interfaces. Being disk-based, WB databases readily store and access hundreds of megabytes of data. WB comes with two base-table embeddings.
(require 'wb-table)
wb-table
supports scheme expressions for keys and values whose
text representations are less than 255 characters in length.
See wb-table in WB.
(require 'rwb-isam)
rwb-isam is a sophisticated base-table implementation built on WB and SCM which uses binary numerical formats for key and non-key fields. It supports IEEE floating-point and fixed-precision integer keys with the correct numerical collation order.
This rest of this section documents the interface for a base table implementation from which the Relational Database package constructs a Relational system. It will be of interest primarily to those wishing to port or write new base-table implementations.
To support automatic dispatch for open-database
, each base-table
module adds an association to *base-table-implementations* when
loaded. This association is the list of the base-table symbol and the
value returned by (make-relational-system base-table)
.
• The Base | ||
• Base Tables | ||
• Base Field Types | ||
• Composite Keys | ||
• Base Record Operations | ||
• Match Keys | ||
• Aggregate Base Operations | ||
• Base ISAM Operations |
Next: Catalog Representation, Previous: Relational Infrastructure, Up: Relational Infrastructure [Contents][Index]