Forum > Third party

MightyQuery SQL Database Management Software

(1/6) > >>

tatamata:
Hello, I have written a small database management system called "MightyQuery" and I'm looking for interested contributors for further development.

You can download source code and binaries from:

http://www.4shared.com/folder/XL3EZwUR/MightyQuery.html

Edit 15.02.2023
Source code (CodeTyphon v. 8.00):
https://matasoft.hr/MightyQuery.7z
Compiled binaries for Linux and Windows:
https://matasoft.hr/MightyQuery_Binary.7z

MightyQuery is a single user SQL database management software working with data stored as comma separated values (.csv, .txt) in plain, flat, textual files. It is serverless, self-contained, simple  SQL DBMS for querying CSV files. In contrast to most database systems, MightyQuery does not require neither server installation, neither external libraries. And is multiplatform (due to Lazarus).

It relies on JanSQL database engine , which original code was written by Jan Verhoeven (http://jansfreeware.com) in Delphi and released under MPL 1.1. license.
As far as I am aware, this might be the only existing free/open-source SQL database engine written in Pascal, thus worthy of preservation and improving.

To enable processing of external data, Mighty Query contains importing utility (due to Zeosdbo), supporting wide range of  SQL database servers, such as: PostgreSQL, Interbase, Firebird, MSSQL, Sybase, SQLite, Oracle, ado, ASA.

MightyQuery uses TDbf for storing metadata about projects (databases), tables, queries, external sources of data. Retrieved data from JanSQL is transfered to TBufDataset for viewing, filtering and searching.

I'm looking forward for your ideas, support and critics.

If someone is interested, we could port this project to SoureForge...

joseme:
Interesting. Do you know what are the practical limits of MightyQuery?

tatamata:
Well, there are many limits at this moment.
- Some queries with joined tables and few conditions in WHERE clause are terrible slow or even freezes the program. I have found that I can overcome that issue by using ASSIGN TO statement. With ASSIGN TO you can aasign a query dataset to a variable that you can use in next SQL statement. So, I split a query in two queries and then it works.
Obviosly, one of the priorities of the MightyQuery project should be to improve JanSQL database engine.
- JanSQL uses only dot for decimal separator. There should be possibility to take over local system settings.
- JanSQL deals only with textual files, thus no binary fields.
- There are no indexes in janSQL
- MightyQuery currently does not have visual query designer.
- Currently MightyQuery process only one query at time, only one window is open
etc, etc.
There is lot of job to do.

tatamata:
TODO:
- improve JanSQL to be able to deal with complex joining (WHERE clause), maybe to add JOIN expression.
- Design visual query builder
- make wrapper components for JanSQL, for example: TJanDatabase, TjanTable, TJanActionQuery, TJanSelectQuery...Datasets to be TBufdataset descendants?
- SQL Query Editor: add Code Highlighting and IntelliSense
- separate procedures from the main form unit code into separate unit...

tatamata:
MightyQuery version 1.0.5 is out.
You can download both source and binaries from:
http://www.4shared.com/folder/XL3EZwUR/MightyQuery.html
Changes from previous version:

* SQL syntax colouring and highlighting
* auto-completion in SQL editor ([Ctrl]+[Space]Next few days I am going to clean-up whole code, so the next version will be rewritten and based on zmsql package (TZMonnection and TZMQueryDataset components). In future, these two projects (MightyQuery and zmsql) will be synchronized.

Navigation

[0] Message Index

[#] Next page

Go to full version