May 20

 

Version history | Known issues | Back to product page

 


 

Version history

 

Version 1.9:

Improvements / changes:

  • Issue #11: File Open dialog needs ‘All Files (*.*) mask

  

Version 1.8.1:

 

Improvements / changes:

  • Issue #10 : Set an order of columns in the data view.

 

Fixed bugs:

  • Issue #5 : Perf issue on large CSV imports
  • Issue #9 : The option "Edit column position" is not saved when the application is closed.

 

Version 1.8:

New:

  • You can now define an appropriate character set before importing data from a CSV file. This value can also be set as default in the Options dialog.

 

Version 1.7:

New:

  • New option: ‘Always include data’ that copies data automatically when you copy/transfer a table. The menu item and the button ‘Copy table with data’ are shown only when this option is unchecked.
  • New option: ‘Use dotted syntax for fields’ allows you to insert the table name with a field and then apply automatically a dotted syntax to refer to the field in the query.
  • A ‘Transfer’ feature is implemented and allows you to transfer objects like tables (including data or not), views… from a database to another.
    • Use the ‘Transfer’ button in the toolbar of the Schema Panel (it only appears when 2 db are open)
    • or just drag and drop an item between schemas of your databases
    • For tables, the transfer may be long, depending on its size
  • In the Schema tree, you can perform some drag&drop actions on objects:
    • Objects as tables, views.. can be copied if you just drag and drop them in their own folder.
    • If you drop a table into the triggers folder, you create a trigger on the dragged table. Same for views.
    • If you drop a table into the indices folder, you create an index on the dragged table.
  • Parameterized queries: Just type parameters in your query (as @AAAA, :AAAA or ?AAAA) and set their respective values in a specific grid.

      You can then execute the same query for different parameter values. And each time you change a parameter value, the query is automatically refreshed.

Improvements / changes:

  • The schema is sorted in alphabetical order.
  • You can now directly create an index on a table using the toolbar or the contextual menu on a table.
  • The sliding toolbar in the Schema tree has been removed and replaced by a static classic toolbar in the Schema Panel. This reduces, in the same time, the memory usage of the app.
  • Some UI enhancements, including new cursors for drag and drop actions.
  • The Query Panel is now more integrated with the other panels of the application and there is no more detached window of it.
    • This means you can insert views, triggers, indices in your query the same way you play with tables, by doubleclick or drag and drop.
    • Snippets are now in a separate Accordion’s child.
    • the option ‘auto detach the Query Panel’ is removed from the ‘Options’ dialog.
  • In the Query Panel, now, if you insert an item by drag and drop or double-click, keeping the CTRL key pressed, you will insert its SQL definition, not only its name.

      This is more convenient to edit the sql of existing database objects.

  • The default work directory is the folder of the current database for each operations of saving, ex/importing.
  • Changed the hyperlink to bug reports: it now points to the issue tracker of bitBucket.org.

Fixed bugs:

  • No more SQL errors when you work on a just-renamed table
  • It is no more possible to right-click a field and get a contextual menu.
  • It is now possible to define a trigger on a view with the INSTEAD OF condition.
  • Renamed items should now be correctly recognised by comparison.

   
Known issue:

  • There is no feedback showing the progress of a data transfer operation. Impossible to implement at the moment.
  • If the first item that you select in your session is a view, the edition column (with edit and delete button) is displayed. But The datagrid keeps not editable.

      This column retrieve its normal behavior when you select another item in the schema.

 

Version 1.6:

Built upon AIR2 SDK.

New:

  • Some options can be set in a new popup form

  - The option of "Edition column position" allows to display data of tables with a large number of columns if set to ‘left’

  • Snippets can be defined in this same new option form. Snippets are pieces of code you can use in the Query Panel to ease your query definitions

Improvements / changes:

  • Small enhancement of the trigger creation dialog
  • The "conflict" column is displayed.
  • You can now check the autoCompact property at db creation.
  • A explain mode can be selected in the Query Panel before executing a query. This seamlessly adds a EXPLAIN or EXPLAIN QUERY PLAN in your query.
  • Only one button to execute queries: single or batch. As a consquence, you should be able to open a sql file and execute it directly whatever it contains (triggers or not especially).

 
Fixed bugs:

  • Files with wrong extension are no more accepted by the cauldron.
  • Fixed the trigger creation in the Query Panel (as simple or in batch queries).
  • When the sql code of the database is copied and pasted in the Query Panel, it should now be correctly formatted.
  • Fixed a bug preventing the last deleted item to be removed from the Schema.
  • Fixed a bug that locked the Data View after deleting a record.
  • Differences results are back in the detached Query Panel.
  • The ComboBoxes in the trigger and index creation dialog should now be correctly binded.
  • A newly created view should now appear immediately in the Schema tree.
  • You should now be able to define an import mapping with csv file with no header.
  • The displayed structure of a table (field list) shouldn’t be updated after an error.
  • It’s no more possible to open more than 1 query window at a time.

 

Version 1.5.8:
WARNING !
This is the last signed version as my certificate will expire soon and that I can’t afford to extend it (and to distribute a free app doesn’t help ;) ).
Be assured that the application you download from my site is secure.
The certificate migration has been performed (to a self-signed one). Please let me know of any problem.

Improvements / changes:

  • The list of tables are available in the dialog of trigger and index creation. This will ease the definition of this kind of objects.
  • Some improvements in the data navigation
  • The list of columns in the Filter Panel is now sorted, it is easier to find the column on which you want to define a filter.
  • In the Import dialog, the columns displaying csv data can now be scrolled horizontally: this will help the data inspection before import, especially when your csv file has many columns.
  • New or saved db files automatically get an extension (.db by default) if the user forgets it.
  • Homogeneization of drag and drop / double-click behaviors in the Query Panel.

Fixed bugs:

  • The list of columns of the Filter Panel is now updated according to the selected table.
  • Boolean data are now correctly imported from a csv file.
  • Fixed a bug in the import that was not correctly driven by the mapping.
  • The list of tables, in the Query Panel, is now immediately synchronized with operations that are executed in the Query Panel: table creation, drop, and alterations.
  • If a table has a column named "uid", it will be displayed.

 

Version 1.5.7
Fixed bugs:

  • In some cases, database files containing table fields with no data type couldn’t be open.

 

Version 1.5.6
Fixed bugs:

  • Couldn’t create tables because of an incomplete refactoring action

 

Version 1.5.5
Fixed bugs:

  • The database comparison feature was broken. It’s back now. Some minor bugs have been identified and should be fixed soon.

 

Version 1.5.4

Improvements / changes:

  • Indices can be accessed and managed in the Schema view. This is a partial implementation of the planned feature.

Fixed bugs:

  • Fixed a bug introduced with the last build on the rename fonction

 

Version 1.5.3

New :

  • Query Panel: you can use SQL statements snippets to accelerate the query definition.

This is a quick and partial implementation of the feature at the moment.
The plan is to integrate the ability to define your own snippets from an interface.

Improvements / changes:

  • A "IF NOT EXISTS" has been added in the SQL code of each CREATE statements.

This aims to help the reuse of the code.

Fixed bugs:

  • It was possible to get SQL errors because of additional spaces or lines in the syntax. The SQL is now cleaned before execution.

 

Version 1.5.2

New

  • Auto-upgrade activated

Fixed bugs:

  • Issue with the import feature: sometimes, all columns were not recognized and additional empty rows were retrieved.

 

Version 1.5.1

Improvements / Changes:

  • Before you import data, you can now edit and remove loaded data

Fixed bugs:

  • Issue with the copy of tables/views… : the feature did nothing.
  • Issue with the export of data: there should not be a ‘null’ column anymore.

 

Version 1.5

New :

  • Added line numbers in the Query Panel.
  • A history is added to the Query Panel. It stores all valid queries that you run for each database you open during your session.
    • You can reuse a previous statement by dragging and droping it from the history to the SQL area.
    • The history is cleared when the application is closed
  • Some features that was available using a contextual menu (by a right-click) are now also available using a button in a toolbar or a renderer in different DataGrids
  • New sliding toolbars are available in the Schema tree. They give you access to the same actions as the context menu.
    • You can open a toolbar for an item in the tree by passing the mouse over the item and then clicking the open button.
  • Item renderers have been added to the different DataGrid to help you manipulate fields or records.
  • You can "Cast a" "save as…" your database file. This does not generate a dump, just a file copy.

Improvements / Changes:

  • Layout issues are partially solved when you switch layout while comparing 2 databases.
  • The width of the application has been slightly increased.
  • The sql code of triggers can be copied to clipboard with a button in a button bar (in addition to the use of the contextual menu).
  • Data tables enter now the edit mode by only 1 click and not a double-click.
  • The code of the schema is no more available in XML.
  • Dates are now edited using the DateField (only if the column is declared as a DATE).
  • Some UI enhancements.
  • The help has been improved: helps are displayed in a Notification instead of simple tooltips.
  • Reduced memory usage.

Fixed bugs:

  • Fixed a bug that throw an error message if you delete records using DEL or SUPPR keys.
  • Fixed a bug that allows the edition of data of a View.
  • Fixed the error that occured when you close the application while editing data.
  • It’s no more possible to edit the data table of an empty table (this table still displays ‘rows / 0′).
  • When you delete some code of your query, you shouldn’t get an error anymore.

 

Version 1.4.2

Fixed bugs/defects:

  • It was possible to get a context menu on the root of the Schema tree with a right-click. This lead to an error.

 

Version 1.4.1

Change:

The "Load" button has been renamed to "Unload".

Fixed bugs/defects:

  • The connection to the database is closed (and the corresponding file can then be deleted, moved or renamed) when you click the "Unload" button to open another database file.

 

Version 1.4

New :

  • The application now uses my component for notifications, replacing some alerts.
  • The SQLite web site can be reached and browsed from the "About…" popup
    • The start page is the Syntax page. By this way, you can easily get help from the official SQLite site.
    • For example: open and detach the Query Panel, open the SQLite site from the "About" popup in the main window.
    • You can then have a look on the site and on your query.
  • The creation form has been so improved for the creation of triggers that this is actually like a new one.

Improvements:

  • The popup menu of the Schema tree has been improved:
    • Added an item to create tables, views or triggers at the folder level,
    • The menus show the name of the selected item instead of ’selected item’,
    • You can create a trigger on a table with a right-click on the table in the tree
  • To create a new view, the application opens the Query Panel (it will be easier to define complex views and check their result)
  • Some transitions effects have been implemented.
  • The original "execute Batch" button has been restored to allow the user to execute either a single query or a serie of statement sperated by a ; . This button is present in the SQLAdmin of Christophe Coenraets that was originally used for the very first version of the Query Panel. This button appears to be really required for some SQL operations.

Fixed bugs/defects:

  • Some minor bugs on the UI,
  • Views can be copied,
  • Triggers should be now created without error from the native menu of the Schema tree.

 

Version 1.3

New :

  • Some UI modifications, some performance improvements
  • Export is now possible using a comma as separator
  • It is now possible to import data from a CSV or TXT file
  • You can filter data
    • use match case or fnid null/empty value
    • you can also use regular expression in your filter
    • the filter can be applied to all the tables, the displayed table or just a column

Improvements:

  • There is no more context menu in the Schema tree for the root and the folders. The context menu is only available for items as tables, views, triggers and indices.
  • Format of exported dates is improved.

Fixed bugs:

  • When you selected a view, the sql was always shown. Now it can be the data table if you were on a the data table of a table.
  • In the Query Panel, the cursor is now positionned at the end of the added field/table and not at the end of the SQL.

 

Version 1.2

New :

  • The root of the tree now displays the name of the database instead of "main"
  • Can now see and open .sqlite files
  • Encryption and rencryption is available
    • You can use either a password or a hashed key to create and open your database
  • A list of recently used databases is available beside the cauldron :
    • Open by drag n’ drop or double click
  • Somme UI modifications as
    • added labels on buttons, as icons only were maybe not well understood
    • added a clearer button to show differences when available
    • a minimum size of the window has been defined
    • added a button to export data (previously accessible only by right-click
    • added some help icons

Fixed bugs:

  • Fixed a bug that kept the "Reset conflict clause" button disabled when the field form was open
  • Fixed the bug that lost the cursor in the SQL area of the Query Panel while adding objects by double-click
  • Fixed a bug that prevented the dropped item to be removed from the schema

 

Version 1.1

New :

  • Analyze / Deanalyze the database
  • Copy the structure of a table with or without data
  • Ability to define Conflict clauses in tables
  • Export data from tables and queries to CSV file
    • Choose your separator, add headers and convert dates.
    • Data export keeps the columns order and data sort
  • A context menu is now available for the Tree showing the db schema
  • The readibility of the comparison result is increased by using only text instead of icons

Fixed bugs:

  • In the field modification form, when a change was done, the validation button was not desactivated after the selection of another field or the cancellation.
  • Solved an issue that removed a table from the tree list in the case of specific modifications
  • Fixed bug that prevented the rename popup to be selected when opened

 

Version 1.0.1

  • Fixed a bug that made some dates invalid during edition

 

Version 1.0.0

  • First public version

 

Known issues or limitations

  • To import dates into DATES fields, they must be of the ISO Format : yyyy-mm-dd hh:mm:ss. Please consider to convert dates in your file before importing it.
  • Adding a new column to a table using keywords like CURRENT_DATE, CURRENT_TIME and CURRENT_TIMESTAMP returns a SQL Error.
    • Add the column then edit it and define your default value with the desired keyword.
  • Views and triggers can’t be edited at the moment : drop them and recreate them.
  • Changing the data type may generates errors: there is no control on this and no conversion.
  • The differences found by the database comparison are not refreshed while editing the databases.
    • Reload the second database to refresh differences.
  • If you start a database comparison process and change the layout before having both databases loaded, the layout may not be correct (both databases visualizers in the same direction).
    • Click the "Switch layout" button until you get the right layout

 

not goodquite goodgoodvery goodexcellent (No Ratings Yet)
Loading ... Loading ...

Written by Arnaud
Tags:

Share/Save/Bookmark


May 12

The certificate, that I am using to sign the SQLite Sorcerer, expires soon. I had 2 choices : renew it or not renew it. I opted for the second option for the following reasons:

  • I don’t generate revenues (not enough actually, and I warmly thank again my generous donators) with this app and my blog in general - which is not my aim just a "bonus",
  • I can’t afford a renewal
  • I am not sure that this is the best "strategy" for such a product, which is free and that gets frequent updates (until now but probably less in the future).
  • The migration process has some cons (for both the editor and the users) as you probably know.

So the version 1.5.8 that I released this week will be the version for "migration". It has been signed with both the current certificate (issued by an accredited body) and a self generated certificate. You should then move smoothly to the future unsigned version and then still keep advantages of the auto-update process. That’s why I encourage all users to update their application to the 1.5.8 before the next release (in probably less than 2 months). Nevertheless, I will keep the 1.5.8 version available on demand if anybody encounter any problem during the migration of an older SQLite Sorcerer version.

Flattr this

not goodquite goodgoodvery goodexcellent (No Ratings Yet)
Loading ... Loading ...

Written by Arnaud
Tags:

Share/Save/Bookmark


May 11

The choice of using an encrypted database or not for an application is not easy as the operation at database level can’t be reverted. But actually you still can "desencrypt" an encrypted SQLite database and vice versa, later if you change your mind. The main principle is that a new database file has to be created and the content of the old one to be transferred into the new one. This requires some manual operations but nothing too costly.

Here is a short procedure, that of course is supported by the SQLite Sorcerer. I will take the case where you have an encrypted database that you want to desencrypt.

  1. Create an empty non encrpyted database, the one that will receive the content of the encrypted one.
  2. Launch the comparison process (only to view both database files during the operation).
  3. Open your encrypted database in the second visualizer using the password or the encryption key.
  4. Get its SQL code.
  5. Copy it to clipboard.
  6. Open the query Panel of the new database file, in the 1st visualizer.
  7. Paste the copied code
  8. Remove (copy them in clipboard) trigger creation statements
  9. Execute the batch query
  10. Return to step 7 for each trigger creation statement

You should now have the same structure in both files

  1. Now, for each table of the encrypted file (in the second visualizer), open the table.
  2. Show its data.
  3. Export data to a file (keep default options).
  4. Once all table data are exported, import all csv files in the corresponding tables of the empty new file.

And you should now have a filled non-encrypted copy of your original encrypted database file, with the same structure and containing the same data. Just test your new non encrypted database, of course.

I can streamline this process in a future version of SQLite Sorcerer. A dump creation feature would be great but quite touchy because of data types or a "transfer to" feature may be…

 Flattr this

 

not goodquite goodgoodvery goodexcellent (No Ratings Yet)
Loading ... Loading ...

Written by Arnaud
Tags: , ,

Share/Save/Bookmark


Mar 05

Since the 2 - 3 last update, SQLite Sorcerer users probably have noticed some regressions. The last one actually is absolutely awful as you couldn’t create tables… shame on me.

I am actually in the process of moving the code to a framework. I have tried MATE as I really appreciated it during the development of Mind2Tests. But the event dispatched by the create table view was not implemented in the LocalEventMap. Big mistake. And not enough tests…

So to avoid future problems, I decided:

  • to use the very new version of FlexMonkey to automate functional testing. Everything can’t be automated with FlexMonkey but of course, this will be much better than manual and incomplete testing. This is absolutely necessary as the whole application is going to be impacted by the new framework ;
  • stop using MATE and try SWIZ instead as I think that MATE is not the easiest solution to migrate existing code because of the Local/EventMaps to implement/maintain. The Mediate metatag seems easier to use in my case.

not goodquite goodgoodvery goodexcellent (No Ratings Yet)
Loading ... Loading ...

Written by Arnaud
Tags: ,

Share/Save/Bookmark


Dec 29

This is now a little more than 1 year that I am working on the SQLite Sorcerer - my posts on multi-statements queries were actually a kind of preliminary study. Then a first release on April 2009, followed by regular releases. I work hard to provide a useful application with a bunch of features and a high level of quality. About the UI, this is just a question of taste and … fun.

Since the release of the version 1.5, I consider to change the way the application is distributed. Actually, I haven’t activated the auto-update feature of the application but it is there till the beginning - just commented - as it was supposed to be an exclusive privilege for donators. But this is really boring for users to uninstall and reinstall a new version to upgrade their favorite ( ;) ) SQLite administration tool. Especially for those working with encrypted databases.

So I decided to activate this feature from now, for everybody. This is my Christmas present (with a few days late) for the few fans of the SQLite Sorcerer ;), to help them have a successful year 2010 with their local SQLite db. If you’re not already a fan, I hope this will help you become a regular user.

Just click the package on the right to get the app.

But there is still a limitation… yes, sorry. The certificate I use to sign the application has its expiry date on june 2010. I am not sure to be able to renew it (I use the offered certificate by Adobe as an AIR application publisher on the AIR marketplace) and I just hope the migration to a self-signed app will encounter no issue.

In the meantime, enjoy the app and don’t hesitate to send me feedbacks and ideas.

 

not goodquite goodgoodvery goodexcellent (No Ratings Yet)
Loading ... Loading ...

Written by Arnaud
Tags: , , ,

Share/Save/Bookmark