Launching AeroSQL – a MySql web based manager built with ExtJS library

May 1st, 2009 | Tags:

AeroSQL Screenshot

I’ve developed a MySql manager back in 2000 for MySql 3.23 using Borland Delphi. The software was used internally in a company. I’ve decided to switch completely to web based application development. I found ExtJS and I was amazed! … Then I thought what application to develop in order to get some ExtJS experience, so I recalled my intention to create a GUI for MySql. Here is how AeroSQL was born.

In my first release of AeroSQL I concentrated my efforts on the grid that manages the result set of an SQL statement. The main feature is that result set are editable: you can change the values of some columns and just press Save. Of course not all SELECTs returns a ‘live’ result set. I’m checking if the query fetched the data from a single table only, and if the result set contains all the columns of a unique index defined for that table, only in this case I let the user modify/save changes.

The easiest way to edit a table is to select it and click Edit Data from the associated popup menu, but it’s a very restricting way of managing the content of a table, that is why I considered the Live Result Set an important feature.

When issuing commands that doesn’t return a result set (INSERT, UPDATE), AeroSQL will let you know the number of affected rows.

AeroSQL also supports multi queries: a series of SQL statements delimited by semicolon (Notice that the Execute buton has a dropdown where you’ll find the Execute Batch option.). If a multi query has result sets, only the last one will be returned to the client. Multi queries can be used to perform transactions, define triggers and stored procedures/functions. In the next versions I want to add the possibility to upload an SQL file on the server (useful when restoring a database from a sql dump file for example).

I like shortcuts, but the only shortcuts available are the Ctrl+Enter in the query textarea (it executes the query), Ins key adds a new row to the grid, Ctrl+Del deletes a row. Shortcut scheme will be improved in next versions.

I want to mention the nice icon set I used: Fugue Icons. I’ve modified a few of them to better fit into the interface.

Also I want to thank the ExtJS Forum for the invaluable knowledge that they “publish” there.

  1. May 18th, 2009 at 19:35
    Reply | Quote | #1

    This tool is excellent! I’m hoping I can eventually replace PHPMyAdmin with an ajax-based tool. The UI is just so much better with this type of thing. I can’t wait until the more advanced management tools (drop/add databases, drop/add tables, modify table structures, that sort of thing) are added to this.

    Any plans to make a website for documentation/support (forums) for this project?

    Thanks for the awesome work. Maybe some day I’ll be able to find time to contribute…

You must be logged in to post a comment.