GENERAL 

* test on mcl. SCL no longer affordable to individuals;
* implement remaining functions for CLSQL AODBC backend;
* port Oracle backend to UFFI.

COMMONSQL SPEC

* Missing: 

  CACHE-TABLE-QUERIES 
  *CACHE-TABLE-QUERIES-DEFAULT*
  *DEFAULT-UPDATE-OBJECTS-MAX-LEN* 
  UPDATE-OBJECT-JOINS 
  INSTANCE-REFRESHED


* Incompatible 


 >> Initialisation and connection 

    INITIALIZE-DATABASE-TYPE
     o should initialise appropriate backend 

    STATUS 
     o what is the behaviour in CommonSQL (esp :full parameter)? 


 >> The functional sql interface 
  
    SELECT 
      o should accept keyword arg :refresh and call INSTANCE-REFRESHED
      o should return (values result-list field-names)
      o should coerce values returned as strings to appropriate lisp type

    QUERY 
      o should return (values result-list field-names) 
      o should coerce values returned as strings to appropriate lisp type

    LIST-ATTRIBUTE-TYPES
      o should return list of (attribute datatype precision scale nullable) 	


 >> The object-oriented sql interface

    DEF-VIEW-CLASS
      o get :target-slot working 
      o implement :retrieval :immediate 

    DO-QUERY,MAP-QUERY,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
transactions: don't seem to work  
views:        mysql does not support views  
queries:      nested subqueries do not seem to work 

SQLITE 

create-view: column-list parameter not supported 
