CACHE-TABLE-QUERIES — Control the caching of table attribute types.
Function
A string representing a database table, T or :default.
T, NIL or :flush.
A database object. This will default to the value of *default-database*.
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.
(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))