So aktualisieren Sie die Tabelle mit activeandroid, nachdem Sie eine neue Spalte hinzugefügt haben
danke fürs lesen und mithelfen :)
Ich verwende ActiveAndroid 3.0 - Android 2.2 - In meiner App habe ich ein Modell namens "Benutzer". Anfangs habe ich nur das Modell mit (ID, Name, Passcode) Spalten / Attributen erstellt, ich habe die App auf dem Emulator ausgeführt und es hat funktioniert.
@Table(name = "user")
public class User extends Model {
@Column (name = "name")
public String name;
@Column (name = "pass_code")
public String passCode;
}
Dann habe ich eine neue Spalte / Attribut - profileImage hinzugefügt. Ich habe die App auf dem Emulator ausgeführt und SQLite-Spalte profileImage ist kein Fehler vorhanden.
@Table(name = "user")
public class User extends Model {
@Column (name = "name")
public String name;
@Column (name = "pass_code")
public String passCode;
@Column (name = "profile_image")
public String profileImage;
}
Ich habe versucht, den ActiveAndroid-Datenbanknamen zu ändern und die Datenbankversionseigenschaften in der Manifestdatei zu aktualisieren.
<meta-data android:name="AA_DB_NAME" android:value="my_app.db" />
<meta-data android:name="AA_DB_VERSION" android:value="2" />
Aber ich halte immer die Spalte existiert kein Fehler.
ERROR AndroidRuntime Caused by: android.database.sqlite.SQLiteException:
no such column: profile_image: , while compiling: SELECT * FROM user WHERE profile_image = ?
Ich habe auch versucht, die App vom Emulator zu deinstallieren, den Emulator neu zu starten und ActiveAndroid.cacheClear () aufzurufen. Bisher hat nichts davon funktioniert.
Ich bin für jede Hilfe sehr dankbar. Vielen Dank.