Hello C.Peachment,

>1. SQLiteSpy is able to read and work with database files
>formatted by versions of Sqlite earlier than 3.3.6 but it also
>appears to change the database format rather than leave
>it as it was found.
>
>I use php version 5.1.4 including Sqlite version 3.2.8.
>There is a database format change in later versions of
>Sqlite that means php is NOT able to read these later
>versions.

SQLiteSpy does not normally change the database format, just as SQLite does 
not. However, starting with SQLite 3.3.0, the file format changed slightly. 
This is no problem until you run the VACUUM command, which I suppose you did? 
VACUUM causes SQLite (and therefore SQLiteSpy as well) to rewrite the database 
and to update it to the latest file format. 

There are two solutions to your problem:

1. Don't run VACUUM from SQLite 3.3.0 or later ;=)

2. Issue 

     PRAGMA legacy_file_format=ON;

   before running VACUUM. This instructs SQLite to use the 
   pre 3.3.0 file format and maintain compatability with
   your 3.2.8 PHP version.

Btw: The problem applies to all software using SQLite 3.3.0 or later, even to 
the SQLite command-line application.

>2. After executing some sql against a database, the result
>set is displayed. If the database is closed after that, the result
>set stays on the screen when it might be less confusing if it
>disappeared as the database was closed.

I felt it would be nice to keep the latest output in case a user wants to 
compare it with another databases still to be opened. But since some users are 
just as confused as you are, I will likely change SQLiteSpy to close all SQL 
statements and result grids if the database is closed.

Regards,

Ralf 

Reply via email to