データベースのプラグマのDBadapterとuser_versionのDBバージョンの意味が全く混乱しています。SQLite DBのバージョンがuser_versionと異なる
DBバージョン= 4を使用してテストし、バックアップを作成し、DBブラウザを使用してPCで開いたところ、「SQL PRAGMA user_version」が52を返しました!
「PRAGMA user_version = 4」を使用してバージョンを一致させると、復元しないファイルが生成されます。
db version = 5を使用した新しいテストでは、プラグマuser_version 53!
dbバージョン<でビルドされたデバッグバリアントはすべてクラッシュします。
db version = 1を使用するには、リリース版をビルドしてデバッグバージョンをアンインストールする必要がありました。
今回は、DBブラウザで開いているバックアップファイルにuser_version 49が表示されています。
上記のバックアップのuser_versionを53から49に編集すると、データベースが正常に復元されます。
リリースバリアントをアンインストールし、バックデバッグバージョンに私は、DBのバージョン= 1でアプリケーションを実行することができますがuser_versionはまだ質問49
た:user_versionマッチDBのバージョンや周りの他の方法を作るためにどのように回復させます可能?
Androidの 'SQLiteOpenHelper'は' PRAGMA user_version'を直接実行します。 「DBブラウザ」はどのツールを意味していますか?実際にSQLコマンドを実行しましたか?正しいコマンドを実行してもよろしいですか? –
SQLiteのDBブラウザはこちらからダウンロードできます。http://sqlitebrowser.org/ SQLクエリ:PRAGMA user_version – alberto