1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
Mergeant
========
TODO items:
Long term items:
* improve queries design by allowin GROUP BY, ORDER BY and sub queries
* make and use queries in an XML form, to be more generic
* restore the possibility to directly send SQL queries.
* create more default widgets to handle default data (timestamps,...)
libgnomedb
==========
Here is a list of all the short and long term improvements that I think should be made
to Libmergeant. The short term improvements should be enough to make a rewrite of Mergeant
using Libmergeant.
Short term improvements:
------------------------
* improve the error reporting of the MgServer object (mg_server_open_connect() and mg_server_do_query()).
* remove (and write the corresponding code) any TO_IMPLEMENT macro from the code
* Finish implementation of joins where there is a join condition
* fix a bug with default values for table's fields (requires work on the postgres provider)
* finish implementation of the MgQuery object with, namely:
- complete sub queries support (at the moment only sub queries right after the FROM statement can be used)
- create new types of MgQfield objects for correlated sub queries and for aggregates (like MgQfFunc)
- implement the GROUP BY and HAVING clauses
* make translations
* improve database example with more data and other providers
Long term improvements:
-----------------------
* implement a MgPreparedStatement in the same way as in the JDBC spec.
* implements the XML queries (all the framework is already in place, and the only thing to do is implement
the missing functions
* handle sequences
* handle triggers (requires a new schema in libgda)
* handle namespaces and associate a namespace with each DBMS object (Table, View, Sequence, Function, etc)
* create a widget to display data in a tabular view and allow direct editing of data within
the widget (similar to the MgWorkForm widget)
* create a widget to display entities and their fields and 'relations' among them, where
drag and drop of fields is used to define relations, etc
* implement DDL queries
Improvements required before a stable release:
----------------------------------------------
* add a real CONSTRAINTS schema to libgda and use this one to make sure we get correctly _all_
the constraints on each table (at the moment, there is a kind of heuristic to make some guesses
on some foreign key constraints and in some known situations, the guesses are bad).
* Improve the Foreign Key constraints by getting attributes such as ON UPDATE action, ON DELETE action, etc
* bug fixes...
|