* CACHE-TABLE-QUERIES
* Test that ":db-kind :key" adds an index for that key. This is complicated by different
backends showing autogenerated primary key in different ways.
-* Large object testing
-* Test bigint type
* :db-constraint tests
* test *db-auto-sync*
-* test SELECT caching
* for-each-row macro
-* universal-time
-
-COMMONSQL SPEC
-
-* Incompatible
-
- >> The functional sql interface
-
- SELECT
- o keyword arg :refresh should function as advertised
-
- >> Symbolic SQL syntax
-
- o userenv (Oracle specific but deprecated in Oracle 9)
+* owner phrases for postgresql and oracle backends
+* Number and Char field types
+* Add test case for return type of (setf slot-value-using-class)
+* symbol slot
+* generalized-boolean slot
VARIANCES FROM COMMONSQL
-UPDATE-OBJECT-JOINS:
- Rather than simply reading the values for each
- object, to meet CommonSQL spec need to generate a single
- query to read values for all objects, up to max-len count.
-
-COMMIT,ROLLBACK,START-TRANSACTION:
- When COMMIT or ROLLBACK are called outside of WITH-TRANSACTION, an sql
- transaction must be explicitly started first with START-TRANSACTION.
+CLSQL starts with in transaction AUTOCOMMIT mode. To begin a transaction,
+START-TRANSACTION has to be called.
OPTIMIZATIONS
-* Revisit result-type list creation,perhaps caching
+* Revisit result-type list creation, perhaps caching
POSSIBLE EXTENSIONS
-* port Oracle backend to UFFI
-* large object support
+* extend large object support to databases beyond postgresql, improve large object api
* add support for prepared statements
+* port Oracle backend to UFFI
-
-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
-syntax: doesn't support the sql concatenation operator (||).
-
-SQLITE
-
-create-view: column-list parameter not supported
-syntax: doesn't support the sql SUBSTRING operator.