This object-oriented interface is deprecated for typical database applications; Using Databases provides an application programmer interface which is easier to understand and use.
Returns a procedure implementing a relational database using the base-table-implementation.
All of the operations of a base table implementation are accessed through a procedure defined by
requireing that implementation. Similarly, all of the operations of the relational database implementation are accessed through the procedure returned bymake-relational-system. For instance, a new relational database could be created from the procedure returned bymake-relational-systemby:(require 'alist-table) (define relational-alist-system (make-relational-system alist-table)) (define create-alist-database (relational-alist-system 'create-database)) (define my-database (create-alist-database "mydata.db"))
What follows are the descriptions of the methods available from
relational system returned by a call to make-relational-system.
Returns an open, nearly empty relational database associated with filename. The only tables defined are the system catalog and domain table. Calling the
close-databasemethod on this database and possibly other operations will cause filename to be written to. If filename is#fa temporary, non-disk based database will be created if such can be supported by the underlying base table implelentation. If the database cannot be created as specified#fis returned. For the fields and layout of descriptor tables, Catalog Representation
Returns an open relational database associated with filename. If mutable? is
#t, this database will have methods capable of effecting change to the database. If mutable? is#f, only methods for inquiring the database will be available. Calling theclose-database(and possibly other) method on a mutable? database will cause filename to be written to. If the database cannot be opened as specified#fis returned.