Next: , Previous: Database Extension, Up: Embedded Commands


6.1.4.2 Command Intrinsics

Some commands are defined in all extended relational-databases. The are called just like Database Operations.

— Operation on relational-database: add-domain domain-row

Adds domain-row to the domains table if there is no row in the domains table associated with key (car domain-row) and returns #t. Otherwise returns #f.

For the fields and layout of the domain table, See Catalog Representation. Currently, these fields are

The following example adds 3 domains to the ‘build’ database. ‘Optstring’ is either a string or #f. filename is a string and build-whats is a symbol.

          (for-each (build 'add-domain)
                    '((optstring #f
                                 (lambda (x) (or (not x) (string? x)))
                                 string
                                 #f)
                      (filename #f #f string #f)
                      (build-whats #f #f symbol #f)))
— Operation on relational-database: delete-domain domain-name

Removes and returns the domain-name row from the domains table.

— Operation on relational-database: domain-checker domain

Returns a procedure to check an argument for conformance to domain domain.