GENERAL * port Oracle backend to UFFI. * consider adding large object support to mysql and odbc * add support for prepared statements. TESTS TO ADD * CACHE-TABLE-QUERIES * :VOID-VALUE attribute, use a new view-class with several fields with different void-values * :COLUMN attribute * Test that ":db-kind :key" adds an index for that key. This is complicated by different backends showing autogenerated primary key in different ways. * Test New universal and bigint types, add tests for other types such as duration and money * Large object testing COMMONSQL SPEC * Missing: UPDATE-OBJECT-JOINS * Incompatible >> The functional sql interface SELECT o keyword arg :refresh should function as advertised o should accept type-modified database identifiers (e.g., [foo :string] which means that the values in column foo are returned as Lisp strings) >> The object-oriented sql interface DEF-VIEW-CLASS o get :target-slot working o implement :retrieval :immediate LOOP o should work with object queries as well as functional ones >> Symbolic SQL syntax o Complete sql expressions (see operations.lisp) substr some order-by times nvl null distinct except intersect between userenv o variables (e.g., table identifiers) should be instantiated at runtime NOTES ABOUT THE BACKENDS MYSQL drop-index: requires a table to be specified with the :from keyword parameter views: mysql does not support views queries: nested subqueries are not supported SQLITE create-view: column-list parameter not supported