I'm trying to drop a table from my database, so I'm following the official instructions for doing that. This is what my code looks like:
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// A list of the values I want to preserve
String contents = Values.KEY_ROWID + ","
+ Values.KEY_NAME + ","
+ Values.COURSE_KEY_TEACHER + ","
+ Values.KEY_DESCRIPTION + ","
+ Values.KEY_ROOM + ","
+ Values.COURSE_KEY_TIMES_OF_DAY + ","
+ Values.COURSE_KEY_COLOR;
db.execSQL("CREATE TABLE course_backup("
+ Values.KEY_ROWID + " int, "
+ Values.KEY_NAME + " text not null, "
+ Values.COURSE_KEY_TEACHER + " text not null, "
+ Values.KEY_DESCRIPTION + " text, "
+ Values.KEY_ROOM + " int, "
+ Values.COURSE_KEY_TIMES_OF_DAY + " text, "
+ Values.COURSE_KEY_COLOR + " int not null);");
db.execSQL("INSERT INTO course_backup SELECT "
+ contents
+ " FROM course_backup;");
/*db.execSQL("DROP TABLE " + Values.COURSE_TABLE + ";");
db.execSQL(Values.COURSE_DATABASE_CREATE);
db.execSQL("INSERT INTO " + Values.COURSE_TABLE + " SELECT "
+ contents + " FROM course_backup");*/
}
But when I pull a copy of the database to my computer and look at the course_backup table, it's completely empty. All the columns were created right, but there isn't a single row of data. What am I doing wrong?