私はAndroidアプリケーションを(初めて)開発しようとしているので、SQLiteを使用してデータを保存しています。しかし、アプリケーションを実行するたびに、すべてのデータがnullになります。問題は、アプリケーションを実行すると、すべてのテーブルが再作成され、新しい空のテーブルとして表示されることだと思います。
誰かがテーブルがすでに作成されているかどうかを確認する方法を助けたり、例を挙げたりできますか?はいの場合はデータをコピーし、作成されていない場合はそれが初めてです!SQLiteを使用してデータを長期間保存するにはどうすればよいですか?データを保存するための最良の方法がわからない場合はどうすればよいですか?
//food
private static final String food= "food";
//---- columns -----
private static final String fid = "fid";
private static final String fname= "fname";
private static final String category = "category";
private static final String quantity= "quantity";
private static final String unit= "unit";
private static final String carbs= "carbs";
//food
private static final String DATABASE_CREATE_Food="CREATE TABLE "
+food+" ("+fid
+ " INTEGER PRIMARY KEY AUTOINCREMENT , "
+fname+ " TEXT NOT NULL, "
+category+" TEXT Not NULL, "
+quantity+" Double Not Null, "
+carbs+" Integer NOT NULL, "
+unit+" TEXT NOT NULL"
+");";
public void onCreate(SQLiteDatabase database) {
database.execSQL(DATABASE_CREATE_Food);
}
/** Called when the DATABASE_VERSION is changed to higher version */
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
Log.w(MyAppDB.class.getName(),
"Upgrading database from version " + oldVersion + " to "
+ newVersion + ", which will destroy all old data");
db.execSQL("DROP TABLE IF EXISTS" + food);
onCreate(db);
}