"Michael Dupuis" <[EMAIL PROTECTED]> wrote: > Greetings, > > I have an application that uses SQLite 3.3.2 right now, and I'm > looking to move to 3.5.2. The problem I have right now is that 3.5.2 > can't open the 3.3.2 formatted database files. I know that the file > format changed, and then changed back, but I thought there was still a > way to get 3.5.2 to open the 3.3.2 "new" formatted database files. I > tried executing both of the PRAGMA legacy_file_format=ON and PRAGMA > legacy_file_format=OFF commands, but neither worked, is there any > other way that I can get the latest version of SQLite to read my older > formatted database files? >
SQLite version 3.5.2 can read and write database files created by every prior version of SQLite. No exceptions. The previous statement is actually more general: SQLite version 3.x.y can read and write any database created by any prior version of SQLite. The second statement is an invariant. If ever we change SQLite in such a way that it cannot read or write prior database versions, then it will become SQLite version 4.0.0. There are no plans to ever do this. Things *mostly* work in the other direction: SQLite version 3.0.0 can read and write databases created by any subsequent version of SQLite. There are some exceptions to this rule. If a database uses features that were added later (such as decending indices, virtual tables, autovacuum, etc) then clearly an earlier version of SQLite will not be able to work with that database. Unlike other database, the SQLite file format does not change gratuitously. -- D. Richard Hipp <[EMAIL PROTECTED]> ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------