私はアンドロイドベースのアポイントメント管理システムを作成しています。私はSQLiteデータベースを使用している予定を格納するために。アプリケーションは完璧に動作しますが、唯一の問題は、アプリケーションを再起動するたびにデータベースが再作成されることです。以下は、onCreateメソッドとonUpgradeメソッドです。 (PS。私はこれが彼にうまく働いた。データベースを作成し、接続のビデオチュートリアルを使用していました。唯一の違いは、私は、Macを使っていて、彼はWindowsを使用した場合)アプリケーションの再起動時にSQLiteデータベースを再作成
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("create table " + TABLE_NAME + " (ID INTEGER PRIMARY KEY AUTOINCREMENT, DATE TEXT, TIME TEXT, TITLE TEXT, DETAIL TEXT, UNIQUE(DATE, TITLE))");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXITS" + TABLE_NAME);
onCreate(db);
}
私は私がアップロードしただけの場合には Database.java
'DATABASE_NAME'は' null'ですか? – laalto
これはDATABASE_NAME = "appointment.db"に設定されていません –
エミュレータまたは実際のデバイスを使用していますか? –