>The only trouble is - how do I know what version were used. >My application may use some features that is available right now and >I want to use them because they are great. >But if I open the DB from the old version I will simply get an error.
No, you are incorrect. If you open a DB file that was created in *any* version of SQLite 3 with the "current" version of SQLite3 it will *ALWAYS* work just fine. When you add new features to the database (such as create a conditional index), you will not be able to open that DB file with versions of SQLite 3 prior to the introduction of that feature (you will get an error). That is, you can always open things made by older versions in a later version of the software. What you cannot do is use a DB that contains "features" in a version of SQLite 3 prior to that features introduction (because, since that feature is not understood, it is indistinguishable from database corruption). So, I can create a DB file with version 3.20.0 that will work perfectly fine if opened with SQLite 3 version 3.0.0, and go back and forth and use any version of SQLite 3 at all, even concurrently on the same database. Until I add a feature that is only supported as of a certain version. From that point forth (until you undo that feature usage) you can only use version of SQLite 3 that understand the feature you are using. _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users