I'm reporting three cases, but they might have common source - handling of new table tab and, in 1st and 2nd case, the behavior after connection is lost.
- It is tested on [HeidiSQL 64bit b5090] using [Win7 Professional 64] with [MySQL by TCP/IP] connecting to [Percona 5.5.46 on Debian 6.0.5] server
- "Close connection" means either wait for server to close connection or drop it using some 3rd party tool - it is not "close connection using HeidiSQL"!
- When I write e.g. "Add new>Table" I'm showing how I'm doing it, in case if it matters
- Connect to the server, go to the new table window (Add new>Table)
- Add field(s) with errors. For the test I made field INT with 665 length.
- Close connection
- Try to save it
- HSQL will reconnect, error will be shown, but the new table tab will disappear (attached file). As window is gone, it's impossible to do fixes and save it.
- When user would want to i.e. display another table, it will display that table is unsaved. In one test I was able to go back to the unsaved schema, i.e. it appeared again somehow. Sorry, I don't remember if I clicked "yes" or "cancel". Yet in two other tests, anything I would click, nothing would bring me back schema editor to make fixes.
- The tear in my eye appeared when it happened for the first time, but I couldn't reproduce it today.
Proposed change: don't close the window, until server really saved table
- Connect to the server
- Close connection
- Start adding new table (in my case right click on database, Add new>Table)
- Server will reconnect, but table schema editor tab won't appear as it would, if connection would be open
Proposed change: wait for connection and then go to the table schema editor
- Create new table, save it
- Delete it (in my case right click on table, Drop...>Yes)
- New table tab still is present, but with save unactivated
Derivate: If you would drop table, willing to use the same dialog (which is still present, per above) to create slightliy different one, it won't allow you. After any change, "save" button will be activated, but HeidiSQL will try to alter schema of non existing table, so user won't be able to save it, unless (s)he will go to the create code tab and paste it as query.
Proposed change (either):
a. either clear new table window when just created table is dropped
b. ask user something like "table doesn't exists, do you want to create new?".