projects
/
clsql.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
r9377: add building of shared library
[clsql.git]
/
TODO
diff --git
a/TODO
b/TODO
index a4adee2d2cfc1eeeb3242451b615f1291924aad0..2dcbf4cd4e91fb4912848018ab016aab88073291 100644
(file)
--- a/
TODO
+++ b/
TODO
@@
-1,60
+1,34
@@
-GENERAL
-
-* port Oracle backend to UFFI.
-
TESTS TO ADD
* CACHE-TABLE-QUERIES
TESTS TO ADD
* CACHE-TABLE-QUERIES
-* :VOID-VALUE
-* :db-kind :key adds an index for that key
-
-COMMONSQL SPEC
-
-* Missing:
-
- UPDATE-OBJECT-JOINS
-
-* Incompatible
+* 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 bigint type
+* :db-constraint tests
+* test *db-auto-sync*
+* for-each-row macro
+* universal-time
- >> The functional sql interface
-
- SELECT
- o keyword arg :refresh should function as advertised
- o should return (values result-list field-names)
- o should coerce values returned as strings to appropriate lisp type
+COMMONSQL INCOMPATIBILITY
- QUERY
- o should coerce values returned as strings to appropriate lisp type
- for SQLite backend
+ o variables (e.g., table identifiers) should be instantiated at runtime
+ o userenv (Oracle specific but deprecated in Oracle 9)
- >> The object-oriented sql interface
+VARIANCES FROM COMMONSQL
- DEF-VIEW-CLASS
- o get :target-slot working
- o implement :retrieval :immediate
+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.
- 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
+OPTIMIZATIONS
+
+* Revisit result-type list creation, perhaps caching
- o variables (e.g., table identifiers) should be instantiated at runtime
+POSSIBLE EXTENSIONS
+* 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
NOTES ABOUT THE BACKENDS
@@
-64,7
+38,9
@@
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
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
SQLITE
-create-view: column-list parameter not supported
+create-view: column-list parameter not supported
+syntax: doesn't support the sql SUBSTRING operator.