X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=TODO;h=fee5fe3e7ab461357f01334fd37a8dd7aac38b77;hb=89465a80557c2b03b9701b4239a34ded292eb018;hp=e7885ada35855a768e667e452532f153a80cd364;hpb=a91ef336e5401ba5acbe0cf66447eeae7d4cad50;p=clsql.git diff --git a/TODO b/TODO index e7885ad..fee5fe3 100644 --- a/TODO +++ b/TODO @@ -6,12 +6,7 @@ TESTS TO ADD * Large object testing * Test bigint type * :db-constraint tests - -POSSIBLE EXTENSIONS - -* port Oracle backend to UFFI -* large object support -* add support for prepared statements +* *update-records-on-make-instance* COMMONSQL SPEC @@ -25,14 +20,10 @@ COMMONSQL SPEC 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 >> Symbolic SQL syntax @@ -53,6 +44,20 @@ COMMONSQL SPEC o variables (e.g., table identifiers) should be instantiated at runtime +OPTIMIZATIONS + +* Revisit result-type list creation,perhaps caching +* Use an inner join for :target-slot in SELECTS rather than multiple + queries. For example, in the test suite: + SELECT address.addressid,address.street_number,... FROM address + INNER JOIN employee_address ON employe_address.address_id=address.address_id + AND emplid= + +POSSIBLE EXTENSIONS + +* port Oracle backend to UFFI +* large object support +* add support for prepared statements NOTES ABOUT THE BACKENDS