r9227: 4 May 2004 Kevin Rosenberg (kevin@rosenberg.net)
[clsql.git] / TODO
1 GENERAL 
2
3 * port Oracle backend to UFFI.
4 * consider adding large object support to mysql and odbc
5 * add support for prepared statements. 
6
7 TESTS TO ADD
8
9 * CACHE-TABLE-QUERIES
10 * Test that ":db-kind :key" adds an index for that key. This is complicated by different
11   backends showing autogenerated primary key in different ways.
12 * Large object testing
13 * Test bigint type
14 * :db-constraint tests
15 * Test result-types for MAP-QUERY and DO-QUERY
16
17 COMMONSQL SPEC
18
19 * Missing: 
20
21   UPDATE-OBJECT-JOINS 
22
23 * Incompatible 
24
25  >> The functional sql interface 
26   
27     SELECT 
28       o keyword arg :refresh should function as advertised 
29       o should accept type-modified database identifiers (e.g., 
30         [foo :string] which means that the values in column foo are returned 
31         as Lisp strings) 
32
33  >> The object-oriented sql interface
34
35     DEF-VIEW-CLASS
36       o get :target-slot working 
37       o implement :retrieval :immediate 
38
39     LOOP
40       o should work with object queries as well as functional ones 
41
42  >> Symbolic SQL syntax 
43
44       o Complete sql expressions (see operations.lisp)
45
46          substr
47          some 
48          order-by 
49          times 
50          nvl
51          null 
52          distinct
53          except 
54          intersect 
55          between
56          userenv
57
58       o variables (e.g., table identifiers) should be instantiated at runtime 
59
60
61
62 NOTES ABOUT THE BACKENDS
63
64 MYSQL 
65
66 drop-index:   requires a table to be specified with the :from keyword parameter
67 views:        mysql does not support views  
68 queries:      nested subqueries are not supported
69
70 SQLITE 
71
72 create-view: column-list parameter not supported