2017-10-11 13 views
2

私はAndroidに少し新しく、私は40 MBのsqliteデータベースを持っていたプロジェクトに取り組んでいます。 今、私は生のフォルダにsqliteのBLOBデータを入れたいので、私のデータベースは1MB未満です。 問題は、データベースパス(data/data/package name/databases)ではdbファイルのサイズが過去と同じであることです(私の携帯電話はルート設定されているため、デバッグ後に確認できます)。 DBブラウザでは、テーブルを削除した後にDBサイズを小さくするためにコンパクトデータベースを使用できます。今私は何ができますか? ご協力いただければ幸いです。tnxを事前に入力してください。androidのsqliteデータベースを更新して圧縮する

+0

あなたはの線に沿って何かを使用します@war_Hero。 –

+0

あなたの注意のためにtnx。私は私の投稿を編集しました。私はそれを再度教えてください。私はそれを説明しようとします。 –

+0

実際に私はsqliteデータベースの1つのテーブルを削除し、生のフォルダにデータを変換しました。同じ。私は自分のアプリを更新したいと思うし、このアップデートではこのテーブルを削除したことを知っている。 –

答えて

2

VACUUMコマンドを使用できます。

これは、データを一時データベースにコピーし、これを使用して元のデータを上書きします。以下では、互換性に関する警告

db.execSQL("VACUUM"); 

注: - - :

あなたの質問は、あなたがそれを単純化して求めることができている正確にどのようなSQL As Understood By SQLite - VACUUM

+0

tnxたくさん。私はこのコード行をどこに置くべきか知っていますか? –

+0

DBHelperを使用している場合は、ヘルパーを取得したらすぐに使用できます。 'mEventsDBHelper =新しいEventsDBヘルパー(これ); mEventsDBHelper.getWritableDatabase()。execSQL( "VACUUM"); ' – MikeT

+0

Tnxロットマン。それは完全に働いた:) –

関連する問題