KDb/TODOs: Difference between revisions
< KDb
No edit summary |
|||
(4 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
==Making | ==Making KDb work with databases creates elsewhere without importing them== | ||
Introduction: | Introduction: KDb depends on kexi__* objects even when accessing native database features. Historically this was caused by limitations of SQLite and having simple support for multiple databases. The problem is however that there are existing databases and users expect to be able to use them with Kexi, and possible extend them with Kexi-specific features. | ||
The Goal: Making | The Goal: Making KDb work without importing | ||
Ideas: | Ideas: | ||
Line 19: | Line 19: | ||
==Junior Jobs== | ==Junior Jobs== | ||
===Fix Krazy warnings=== | ===Fix Krazy warnings=== | ||
Fix [http://ebn.kde.org/krazy/reports/playground/libs/ | Fix [http://ebn.kde.org/krazy/reports/playground/libs/kdb/index.html Krazy checker's warnings]. Especially: | ||
*add d-pointers - [dpointer] warning | *add d-pointers - [dpointer] warning | ||
*move inline code from headers to .cpp - [inline] warning | *move inline code from headers to .cpp - [inline] warning | ||
Line 28: | Line 28: | ||
See [[../Tests/]]. | See [[../Tests/]]. | ||
== | ==DONE== | ||
===User data storage=== | |||
--> [[/User data/]] - Add support for user data storage | |||
Latest revision as of 18:50, 6 April 2023
Making KDb work with databases creates elsewhere without importing them
Introduction: KDb depends on kexi__* objects even when accessing native database features. Historically this was caused by limitations of SQLite and having simple support for multiple databases. The problem is however that there are existing databases and users expect to be able to use them with Kexi, and possible extend them with Kexi-specific features.
The Goal: Making KDb work without importing
Ideas:
- add to Connection: virtual bool drv_tableNames(QStringList& tablenames) = 0; (from KexiMigrate)
- this iterates through the database schema
- add to Connection: virtual bool drv_readTableSchema(QString& tableName, KexiDB::TableSchema& tableSchema) = 0; (from KexiMigrate)
- this reads the native table schema and creates TableSchema object
Optional:
- add to Connection: virtual bool drv_viewNames(QStringList& tablenames) = 0;
- map it to SELECT queries in Kexi
SQLite Driver
- Add better scrolling to the cursor, see: http://www.sqlite.org/cvstrac/wiki?p=ScrollingCursor for advice.
Junior Jobs
Fix Krazy warnings
Fix Krazy checker's warnings. Especially:
- add d-pointers - [dpointer] warning
- move inline code from headers to .cpp - [inline] warning
- fix typos
For other types of warnings ask the maintainer first - there are false positives!
Add unit tests
See Tests.
DONE
User data storage
--> User data - Add support for user data storage