The currently developed version is KSql 2.0. Most parts of the project are being
rewriten in order to make this project become a powerfull database application.
The main goals are:
- Provide a transparent and easy-to-use database acces layer for third-party developers.
- Provide a powerfull GUI for database developers and end-users.
- Provide a platform for database-oriented application via scripting and forms
- Make components of the application available and manipulable thanks to:
- KParts: main components of the GUI may be easyly embedded
- A high-level C++ library to use essential GUI parts like forms and data-aware widgets
- Externalization of the object model to scripting languages and/or via DCOP interfaces
- Provide integration with data-oriented web tools like PHP.
- Integrate the whole in KDE2 and KOffice.
Recent important steps in the development are:
- Michael Koch ported KSql to KDE2 and its new features, including KParts.
- Alessandro Praduroux has been working on a new object model for the data access part.
- The plugin system has been mostly rewriten using the new KDE2 facilities
- kdbcore: The core database access layer. The API is database-transparent, and specific SQL servers are accessed via specific plugins.
Currently supported backends are MySql, PostgreSQL, miniSQL, SyBase, and ODBC.
It is primarily used by KSql itself, but is available to third-party developers. It is configurable
int the KDE control panel.
- kdbui: A set of dialog and widgets, like connection dialog, plugin management dialog, form runtime, etc...
In the future it will also contain data-aware widgets.
- ksql: The graphical user interface. It is itself composed of several modules, most of them begin embedable components (KParts):
- The "shell": provides the global user interface, and embeds the various parts.
- TableViewer: table viewing component.
- TableEditor: the table-contents edition component.
- FormEditor: the form edition component.
- QueryWizard: graphical request builder.
- Export: various modules handling export (XML, HTML, SQL, ...).
- Database-specific parts: Backend-dedicated components for server administration, schema edition, etc.
- libksql: Library mostly for internal use.
- kcmksql: Control panel applet for plugin and data-sources configuration.
- kword_adresses: Module to access KWord adresses.