CACHE-TABLE-QUERIES
Prev | Functional Data Manipulation Language (FDML) | Next

## Name

CACHE-TABLE-QUERIES — Control the caching of table attribute types.Function

## Syntax

          cache-table-queries table &key action database =>

## Arguments and Values

`table`

  A string representing a database table, `T` or :default.

`action`

  `T`, `NIL` or :flush.

`database`

  A database object. This will default to the value of *default-database*.

## Description

Controls the caching of attribute type information on the table specified by `table` in `database` which defaults to *default-database*. `action` specifies the caching behaviour to adopt. If its value is `T` then attribute type information is cached whereas if its value is `NIL` then attribute type information is not cached. If `action` is :flush then all existing type information in the cache for `table` is removed, but caching is still enabled. `table` may be a string representing a table for which the caching action is to be taken while the caching action is applied to all tables if `table` is `T`. Alternatively, when `table` is :default, the default caching action specified by *cache-table-queries-default* is applied to all tables for which a caching action has not been explicitly set.

## Examples

    (setf *cache-table-queries-default* t)
    => T
    (create-table [foo]
                  '(([id] integer)
                    ([height] float)
                    ([name] (string 24))
                    ([comments] varchar)))
    =>
    (cache-table-queries "foo")
    =>
    (list-attribute-types "foo")
    => (("id" :INT4 4 NIL 1) ("height" :FLOAT8 8 NIL 1) ("name" :BPCHAR 24 NIL 1)
        ("comments" :VARCHAR 255 NIL 1))
    (drop-table "foo")
    =>
    (create-table [foo]
                  '(([id] integer)
                    ([height] float)
                    ([name] (string 36))
                    ([comments] (string 100))))
    =>
    (cache-table-queries "foo" :action :flush)
    =>
    (list-attribute-types "foo")
    => (("id" :INT4 4 NIL 1) ("height" :FLOAT8 8 NIL 1) ("name" :BPCHAR 36 NIL 1)
        ("comments" :BPCHAR 100 NIL 1))

## Side Effects

The internal attribute cache for `database` is modified.

## Affected by

*cache-table-queries-default*

## Exceptional Situations

None.

## See Also

*cache-table-queries-default*

## Notes

None.

Prev | Up | Next
*CACHE-TABLE-QUERIES-DEFAULT* | Home | INSERT-RECORDS