Matt Sergeant wrote:
Now the big problem is that sqlite 3.0 is incompatible with sqlite 2.x
Just a thought: create a stub - an empty base class that inherits from either the old or the new depending on an environment variable. The DBD::SQLite distribution would include the old DBD, the new DBD, and the stub. See DBI::SQL::Nano for the way Tim helped me do that with Nano/Statement. This would allow users to both access old data and create new data and migrate on their own timescale and is only a few lines of code for you. If the default behaviour is the 2.x, then current users won't have to do anything for existing data. If you have an install-time option to change the default to 3.x new users without old data can go straight to 3.x with no problems. Users will also be able to do things like declaring certain filenames or directories as either 2.x or 3.x so they can use the correct DBD for different data if they need to migrate one db at a time.
-- Jeff
