I need to convert from sqlite2 db to sqlite3, is there any tutorial that shows how to do it? And if I migrate correctly what to expect as I start the project?
问题:
回答1:
The SQLite website says:
sqlite OLD.DB .dump | sqlite3 NEW.DB
where sqlite
is version 2 and sqlite3
is version 3.
回答2:
Converting an SQLite2 database to an SQLite3 database on Windows
-- Step-by-step instructions --
1- Download SQLite2 and SQLite3 command-line tools
Download links:
sqlite.exe http://web.archive.org/web/20031203050807/http://sqlite.org/download.html (Precompiled Binaries For Windows)
sqlite3.exe http://www.sqlite.org/download.html (Precompiled Binaries for Windows)
2- Copy sqlite.exe, sqlite3.exe and the db to convert to the same folder (i.e.: D:\TEMP)
3- Open a Windows command prompt ( [WINDOWS KEY] + [R], then type "cmd" or via the Start Menu)
4- Browse to the folder where you've just copied the files (i.e.: type "D:", then "cd temp") 5- Type "sqlite OLD.DB .dump | sqlite3 NEW.DB" (without the quotes), where OLD.DB is the db file you want to convert and NEW.DB is the name of the converted file that will be created.
Hope this helps.
回答3:
EDITED: ANSWER TO THE QUESTION
To the conversion
- Go to http://www.sqlite.org/download.html
- Download sqlite-dll file (which stays in Precompiled Binaries For Windows)
- Unpack it and copy to C:\Windows\System32 folder
What are the differences? (quoted from PHP - SQLite vs SQLite3)
- SQLite2 internally stores every value as a string, regardless of its type.
- Upgrading to SQLite3 will certainly shrink the database size since numbers and BLOBS get stored in their native formats, which could make things run faster.
- starting from 3.6.23 version it supports foreign keys.