Yunqa • The Delphi Inspiration

Delphi Components and Applications

User Tools

Site Tools


apps:sqlitespy:history

Table of Contents

SQLiteSpy: Version History

SQLiteSpy is a fast and compact GUI database manager for SQLite. It reads SQLite3 files and executes SQL against them. Its graphical user interface makes it very easy to explore, analyze, and manipulate SQLite3 databases.

SQLiteSpy v1.9.23 – 18 Mar 2024

  • Update the built-in database engine to SQLite 3.45.2, DISQLite3 v5.48.2.
  • Fix: The schema treeview did not show generated columns.
  • Fix: If a table's pimary key column name contained parameter characters ('?', ':', '@', or '$'), a double click on the schema treeview failed to display the table or showed “0 - deleted” instead of the actual row data.

SQLiteSpy v1.9.22 – 31 Jan 2024

SQLiteSpy v1.9.21 – 19 Jan 2024

SQLiteSpy v1.9.20 – 27 Nov 2023

SQLiteSpy v1.9.19 – 11 Oct 2023

SQLiteSpy v1.9.17 – 26 Aug 2023

  • Update the built-in database engine to SQLite 3.43.0, DISQLite3 v5.45.0.
  • Add the ieee754 extension.
  • Loop tabs when switching to next / previous using STRG (+ SHITF ) + TAB.

SQLiteSpy v1.9.16 – 6 Jul 2022

  • Update the built-in database engine to SQLite 3.39.0, DISQLite3 v5.41.0.
  • Add the LSM virtual table extension.

SQLiteSpy v1.9.15 – 8 Feb 2021

  • Update built-in DISQLite3 engine to SQLite 3.34.1.
  • Add the bytecode*() table-valued function. Example:
    • SELECT * FROM bytecode('SELECT 1');
  • Add tables_used*() table-valued function. Example:
    • SELECT * FROM tables_used('SELECT * FROM sqlite_schema');
  • Add the uint collation sequence, which compares strings of digits in numeric order.
  • Add decimal extension functions for arbitrary-precision decimal arithmetic on numbers stored as text strings. Examples:
    • SELECT decimal_add('2', '3'); returns 5.
    • SELECT decimal_sub('2', '3'); returns -1.
    • SELECT decimal_mul('2', '3'); returns 6.

SQLiteSpy v1.9.14 – 5 Feb 2020

  • The download package now contains SQLiteSpy.exe Win32 as well as Win64 executables.
  • Update built-in DISQLite3 engine to SQLite 3.31.1.
  • Add the BLOBIO SQL function extension. Example:
    • CREATE TABLE t(a blob);
      INSERT INTO t VALUES (x'01020304');
      SELECT readblob('main', 't', 'a', 1, 0, 4);
  • Add the DBDATA virtual table extension. Examples:
    • SELECT * FROM sqlite_dbdata();
    • SELECT * FROM sqlite_dbptr();
  • Add the FOSSILDELTA SQL function extension. Example:
    • SELECT delta_apply(x'0102', delta_create(x'0102', x'0304'));
  • Add the URIFUNCS SQL functions extension. Examples:
    • select sqlite3_filename_database('main');
    • select sqlite3_filename_journal('main');
    • select sqlite3_filename_wal('main');
  • Add the UUID SQL functions extension. Examples:
    • SELECT uuid();
    • SELECT uuid_str(uuid());
    • SELECT uuid_blob(uuid());
  • Add redo to SQL edit.
  • Automatic column widths of result grid take column caption into account.

SQLiteSpy v1.9.13 – 1 Mar 2019

  • Update built-in DISQLite3 engine to SQLite 3.27.2.
  • Add the PREFIXES extension:
    • prefixes() table-valued SQL function.
      Example: SELECT prefixes('abcdefg');
    • prefix_length() SQL function.
      Example: SELECT prefix_length('abcdxxx', 'abcyy'); yields 3.
  • Add the IsoWeek() and IsoWeekYear() SQL functions. Right now, they accept a date in exactly YYYY-MM-DD string format only.
    • SELECT IsoWeek('2019-01-01');
    • SELECT IsoWeekYear('2019-01-01');
  • Add the SQLAR extension.
  • Add the ZIPFILE extension.
  • Pull syntax highlighter keywords and function names from SQLite3.
  • Fix an AV when trying to edit a table with no result rows.

SQLiteSpy v1.9.12 – 2 Jan 2018

  • Update built-in DISQLite3 engine to SQLite 3.21.0.
  • Add the CSV extension.
    Example: CREATE VIRTUAL TABLE t1 USING csv(filename='thefile.csv');
  • Add the DBPAGE extension.
    Example: SELECT data FROM sqlite_dbpage('main');
  • Add the CHECKFREELIST SQL function.
    Example: SELECT checkfreelist('main');
  • Add the SHA3 extension.
    Example: SELECT sha3('abc', 256);
  • Add the SHA1 extension.
    Example: SELECT sha1('abc');
  • New menu item and SHIFT+F9 shortcut for EXPLAIN QUERY PLAN SQL.
  • Improve updating the SQL status in case of errors.

SQLiteSpy v1.9.11 – 10 Jun 2016

  • Update built-in DISQLite3 engine to SQLite 3.13.0.
  • Add the JSON extension.
    Example: SELECT json_extract('{“a”:2,“c”:[4,5,{“f”:7}]}', '$.c[2].f');
  • Add the Session extension.
    Example: SELECT * FROM generate_series(0,100,5);

SQLiteSpy v1.9.10 – 10 Aug 2015

  • Update built-in DISQLite3 engine to SQLite 3.8.11.1, including new Full Text Search 5 (FTS5).
  • Fix table browsing if INTEGER PRIMARY KEY column contained ^ characters.
  • Try to detect UTF-8 encoding if loading an SQL file without BOM.

SQLiteSpy v1.9.9 – 19 May 2015

  • Update built-in DISQLite3 engine to SQLite 3.8.10.1.
  • Add DBSTAT virtual table.
  • The schema tree flags INTEGER PRIMARY KEY columns as “semi not null”, using a gray check tick. This indicates that these columns do not allow certain NULL actions (i.e. UPDATE) and raise errors.

SQLiteSpy v1.9.8 – 21 Aug 2014

  • Update built-in DISQLite3 engine to SQLite 3.8.6.
  • Attached database: Double clicking a table node did not work. Fixed.
  • New MediaMonkey.dll extension which adds the IUNICODE collation sequence needed to open MediaMonkey databases.

SQLiteSpy v1.9.7 – 19 Apr 2014

  • Update built-in DISQLite3 engine to SQLite 3.8.4.3.
  • Open database by drag and dropping on the schema treeview.
  • Respect decimal point option when editing floating point numbers.
  • More stable scrolling through huge numbers of rows / columns.
  • Fix display of table / column names which represent SQLite keywords.

SQLiteSpy v1.9.6 – 6 Sep 2013

  • Implement the SQLite 3.8.0.2 bug fixes.

SQLiteSpy v1.9.5 – 30 Aug 2013

  • Implement the SQLite 3.8.0.1 bug fixes.

SQLiteSpy v1.9.4 – 29 Aug 2013

  • Update built-in DISQLite3 engine to SQLite 3.8.0.
  • In table browsing mode, order results by ROWID.
  • Fix error when scrolling a table with many result columns.
  • Stay responsive in case of SQLite errors.

SQLiteSpy v1.9.3 – 11 Apr 2013

  • Update built-in DISQLite3 engine to SQLite 3.7.16.1.
  • Add SQLite's spellfix virtual table.
  • New file menu items to create, open or attach a database with URI parameters.
  • Improve [ESC] key responsiveness for multiple, small SQL statements like INSERT.
  • Option to specify the data type in cell editor.
  • Handle tables dropped after displayed the grid editor.
  • Auto-calculate column widths from the record texts of initially displayed records.
  • [Ctrl+PgUp/PgDn] navigate between result tabs.
  • [Shift+F10] opens the context menu in the schema treeview.

SQLiteSpy v1.9.1 – 28 Jul 2011

  • Update built-in DISQLite3 engine to pre SQLite 3.7.8.
  • Add YuStemmer language stemming to the FTS4 unicode tokenizer.
  • Add SQLite's fuzzer and wholenumber virtual tables.
  • If a database file can not be opened, fall back to the :memory: database.

SQLiteSpy v1.9.0 – 2 Mar 2011

  • Support for loadable extensions compiled with “fastcall” (C++ Builder) or “register” (Delphi) calling conventions.
  • Update built-in DB engine to pre SQLite 3.7.6 (DISQLite3 2.3.4).
  • On database close, open an in-memory database (:memory:).

SQLiteSpy 1.8.16 – 31 Aug 2010

  • Update built-in DB engine to SQLite 3.7.2 (DISQLite3 2.3.1).
  • Print some sqlite3_stmt_status() performance counters to the status bar.
  • Faster processing of large SQL scripts.
  • Fix table mode browsing (double clicking on a table name) for tables which use some of the INTEGER PRIMARY KEY aliases as column names. Output a warning if the table can not be browsed because all three names (ROWID, OID, or _ROWID_) are in use by the table. This sould be very rare, however.

SQLiteSpy 1.8.15 – 5 Aug 2010

  • Update built-in DB engine to SQLite 3.7.0.1 (DISQLite3 2.3.0.1). This fixes a potential database corruption problem that can result if the same database file is alternately written by SQLite version 3.7.0 and SQLite 3.6.23.1 or earlier. Upgrading is highly recommended.

SQLiteSpy 1.8.14 – 28 Jul 2010

  • Update built-in DB engine to SQLite 3.7.0 (DISQLite3 2.3.0).

SQLiteSpy 1.8.13 – 15 Apr 2010

  • Update built-in DB engine to SQLite 3.6.23 (DISQLite3 2.2.2).

SQLiteSpy 1.8.12 – 25 Feb 2010

  • Update built-in DB engine to SQLite 3.6.22 (DISQLite3 2.2.0).

SQLiteSpy 1.8.11 – 8 Dec 2009

  • Update built-in DB engine to SQLite 3.6.21 (DISQLite3 2.1.2).

SQLiteSpy 1.8.10 – 16 Aug 2009

  • Update built-in DB engine to SQLite 3.6.17 (DISQLite3 2.0.9).

SQLiteSpy 1.8.9 – 8 Mar 2009

  • Update built-in DB engine to SQLite 3.6.14 (DISQLite3 2.0.7).
  • Fix AV when SQLiteSpy was closed while its options DB is locked. This could happen when multiple instances of SQLiteSpy were closed at the same time.

SQLiteSpy 1.8.8 – 31 Jan 2009

  • Update built-in DB engine to SQLite 3.6.10 (DISQLite3 2.0.3).
  • Fix an access violation when pressing ESC if no database is open.

SQLiteSpy 1.8.7 – 20 Dec 2008

  • Update built-in DB engine to SQLite 3.6.7 (DISQLite3 2.0.2).

SQLiteSpy 1.8.5 – 17 Nov 2008

  • Update built-in DB engine to SQLite 3.6.5 (DISQLite3 2.0.0).
  • Schema treeview: Fix access violation which could occur when deleting a table or view via the schema treeview context menu.
  • Improve data grid horizontal scrolling.

SQLiteSpy 1.8.1 – 1 Aug 2008

  • Update built-in DB engine to SQLite 3.6.1 (DISQLite3 1.6.1).
  • Schema treeview: Show triggers even if the trigger table name case differs from the original table name case.

SQLiteSpy 1.7.9.1 – 1 Jul 2008

  • Fix Vista Open and Save dialog problem.
  • Fix form scaling problem with large fonts.
  • Increase splitter size slightly to please high resolution displays.

SQLiteSpy 1.7.9 – 26 Apr 2008

  • Update built-in DB engine to SQLite 3.5.9 (DISQLite3 1.5.9).
  • Correct problem with NULL RowIDs in table mode.

SQLiteSpy 1.7.8 – 26 Apr 2008

  • Update built-in DB engine to SQLite 3.5.8 (DISQLite3 1.5.8).

SQLiteSpy 1.7.5.1 – 6 Feb 2008

  • Update version number (the 1.7.5 version still showed 1.7.4 in the About screen).
  • Add a simple “alive” indicator to the status bar for long queries.

SQLiteSpy 1.7.5 – 1 Feb 2008

  • Update built-in DB engine to SQLite 3.5.5 (DISQLite3 1.5.5).
  • Show name of open database in the Windows taksbar.

SQLiteSpy 1.7.4 – 17 Dec 2007

  • Update internal database engine to SQLite 3.5.4 (DISQLite3 1.5.4).
  • In the SQL edit, pressing CTRL+RETURN now executes SQL similar to the global F9.
  • Fix SQL edit keyboard shortcuts CTRL+A (select all) and CTRL+Z (undo).

SQLiteSpy 1.7.2 – 06 Nov 2007

  • Update internal database engine to SQLite 3.5.2.
  • Add NEAR/x operator to FTS3.
  • Add menu option to set the decimal separator for floating point number display.

SQLiteSpy 1.7.1 – 09 Oct 2007

  • Update internal database engine to SQLite 3.5.1 CVS 4479, implemented as DISQLite3 1.5.1.
  • New SQL functions COMPRESS() and UNCOMPRESS().

SQLiteSpy 1.7.0 – 19 Sep 2007

  • Update internal database engine to SQLite 3.5.0 Alpha CVS 4431, implemented as DISQLite3 1.5.0.1 Alpha.
  • Update internal regular expression engine to PCRE 7.3, implemented as DIRegEx 4.3.
  • Added Full Text Search 3 module (FTS3).
  • Add “Pascal” tokenizer for FTS2 and FTS3, a custom tokenizer written in Delphi to index Pascal source code files. See DISQLite3 for source code.
  • Improve FPU compatability with original SQLite.
  • Disallow fts2_tokenizer() and fts3_tokenizer() SQL functions.

SQLiteSpy 1.6.7 – 20 Jun 2007

  • Update to use SQLite 3.4.0, implemented as DISQLite3 1.4.0.
  • Only *.sql and *.txt files open when dragged & dropped into the SQL edit window.
  • Automatically remove helper tables from the schema treeview if a virtual table is deleted.
  • Added mathematical SQL functions in addition to the SQLite default: ACOS(), ASIN(), ATAN(), ATAN(), ATAN2(), CEIL(), CEILING(), COS(), COT(), DEGREES(), EXP(), FLOOR(), LN(), LOG(), LOG(), LOG2(), LOG10(), MOD(), PI(), POW(), RADIANS(), SIGN(), SIN(), SQRT(), TAN(), TRUNCATE().
  • Fix a bug introduced in the previous version: Only the first of multiple SQL statements was executed.

SQLiteSpy 1.6.6 – 6 Jun 2007

  • Update to use SQLite 3.3.17 CVS [4045].
  • When in table browsing mode, avoid repetitive exceptions if a table is no longer available. Show an error message inside the cell instead.
  • Drastically cut down the time to open databases with many tables and demanding views.
  • Improve [ESC] key responsiveness when aborting very long queries.

SQLiteSpy 1.6.5 – 18 Apr 2007

  • Update to use SQLite 3.3.16.

SQLiteSpy 1.6.4 – 11 Apr 2007

  • Update to use SQLite 3.3.15.

SQLiteSpy 1.6.3 – 3 Apr 2007

  • Update to use SQLite 3.3.14.
  • Correct font in the edit window.

SQLiteSpy 1.6.2 – 28 Feb 2007

  • Reading table data from a locked database no longer results in an error message.
  • Invalid regular expressions return a proper error message.
  • Option for caseless REGEXP.
  • SQL edit control supports inserting tabs via CTRL + ALT + TAB.
  • Populated grid does not trigger donation button.

SQLiteSpy 1.6.1 – 21 Feb 2007

  • Use SQLite 3.3.13.
  • Fix a problem displaying tables with negative RowIDs.
  • Fix a problem executing multiple selects from the SQL editor.
  • Do not clear the result grid if an invalid SQL statements fails.

SQLiteSpy 1.6.0 – 7 Feb 2007

  • Cell editing is now possible in the grid for tables selected from the schema treeview.
  • Improved performance and reduced memory requirements when displaying tables from the schema treeview.
  • New options storage format. Previously saved form positions and MRU lists will be lost.
  • Width of the schema tree columns is now saved.
  • The internal SQLite library is now 3.3.12, including full text search one (FTS1) and two (FTS2).
  • Encryption support for databases created with the DISQLite3.
  • Fixed a few bugs and memory leaks.

SQLiteSpy 1.5.5 – 3 Jul 2006

  • Fixed a buffer overflow which could crash SQLiteSpy when displaying malformed UTF-8 text.

SQLiteSpy 1.5.4 – 20 Jun 2006

  • Updated the internally used DISQLite3 library to the latest version, which corresponds to SQLite3 3.3.6.
  • The schema tree view did not automatically reflect if a table was emptied or initial records were being added.
  • The default text encoding for newly generated database files is now UTF-8.
  • Fixed a nasty bug which could cause the syntax highlighting to freeze the application.

SQLiteSpy 1.5.3 – 10 Apr 2006

  • Updated the internally used DISQLite3 library to the latest version, which corresponds to SQLite3 3.3.5.
  • Availability of data is no not indicated in the schema treeview if data checking takes too long. This speeds up loading databases with time consuming views.
  • Fixed problems when running on systems without MMX support.

SQLiteSpy 1.5.2 – 12 Feb 2006

  • Updated the internally used DISQLite3 library to the latest version, which corresponds to SQLite3 3.3.4.
  • Added codepage support to the Text → Unicode conversion.
  • Fixed a problem when running SQLiteSpy from a location which contained accented characters in its path name.

SQLiteSpy 1.5.1 – 2 Feb 2006

  • Updated the internally used DISQLite3 library to the latest version, which corresponds to SQLite3 3.3.3.
  • Attached databases now show up in the schema tree view, including all their tables, indexes, views and triggers.
  • New File → Attach Database… menu item.
  • Attached databases can be easily detached using the schema tree view's context menu.
  • ALTER TABLE … ADD COLUMN automatically updates the schema tree view. The schema tree view should now automatically adjust to any internal change to the database schema.
  • Executing an SQL statement which does not return any data now shows all columns on top of an empty result grid. This change was requested by many users who felt confused when the grid was not cleared if no results were returned.

SQLiteSpy 1.5 Beta – 25 Jan 2006

  • Updated the internally used DISQLite3 library to the latest version, corresponding to SQLite 3.3.2 Beta.
  • Fixed a highlighting issue with unrecognized [ and ] square brackets.
  • Fixed yet another bug with the 'localtime' implementation.

SQLiteSpy 1.4 – 20 Dec 2005

  • Refreshing the schema treeview no longer displays a SQLITE_SCHEMA error if the database schema has changed outside SQLiteSpy.
  • The schema treeview automatically refreshes when SQLiteSpy becomes active and the database has changed outside of SQLiteSpy.
  • If SQL commands executed within SQLiteSpy change the database schema, most of these changes are automatically reflected in the schema treeview.
  • Refreshing the schema treeview preserves the expanded / collapsed state of existing nodes.
  • The schema treeview indicates if tables and view contain any data by showing a “+” sign if they do and a “-” sign if they do not.
  • SQLite error messages are now properly shown for international characters (Cyrillic, Greek) as well.
  • For multiline text, the data grid shows the first line only plus a small icon indicating that more lines are available. Hints a single-line also and no longer spread across the entire screen. To view the full text, click the cell and scroll the text in the edit below.
  • Limited width of datagrid columns to prevent infinite widths for very long texts.
  • Added “Text to Unicode Conversion…” to the Execute Menu. This allows to change text fields of selected tables and columns from the currently used ANSI encoding to Unicode. Non-text data is not converted.
  • Fixed a year offset bug with the 'localtime' implementation.
  • Fixed a bug that would crash SQLiteSpy if an invalid database file was passed at the command line.
  • Updated the internally used DISQLite3 library to the latest SQLite version 3.2.8.

Thanks to all who have reported bugs, suggestions and ideas to SQLiteSpy!

SQLiteSpy 1.3.3 – 27 Sep 2005

  • Updated the internally used DISQLite3 library to the latest version.

SQLiteSpy 1.3.2 – 19 Sep 2005

  • Updated the internally used DISQLite3 library to the latest version.
  • Memory reductions and speed improvements for running queries and storing results.
  • Added syntax highlighting for new SQL keywords.

SQLiteSpy 1.3.1 – 25 Aug 2005

  • Updated the internally used DISQLite3 library to the latest version.

SQLiteSpy 1.3 – 23 Aug 2005

  • Updated the internally used DISQLite3 library to the latest version.

SQLiteSpy 1.2 – 23 Aug 2005

  • Updated the internally used libraries to the latest versions: DISQLite3, DIRegEx, zlib.
  • Added syntax highlighting and menu item for the new SQL ANALYZE command.
  • Fixed a few minor bugs.

SQLiteSpy 1.1 – 15 Jun 2005

  • New support for REGEXP keywoard, implementing a regular expression syntax compatible to Perl 5.8.
  • SQLite database engine updated to the latest version.
  • Bug fixes, mostly related to drag & drop file operations into the SQL editor and tab handling.

SQLiteSpy 1.0 – 1 Jun 2005

  • Initial public release.
apps/sqlitespy/history.txt · Last modified: 2024/03/18 18:11 by 127.0.0.1