Einfügen habe ich versucht, warum Abstürze beim Start meiner App zu finden, und Debugger sagen, dassFehler beim Wert in db
„E/SQLiteLog: (1) ein solche Tabelle: Kategorien E/SQLiteDatabase: Fehler-Namen Einfügen = Salate android.database.sqlite.SQLiteException: keine solche Tabelle: Kategorien (Code 1):, beim Kompilieren: INSERT INTO Kategorien (Name) VALUES (?) "
Auch nachdem ich in meinen Code geschaut habe, scheint es Wie die Tabelle Kategorien gemacht wird und Fehler sollte nicht angezeigt werden.
public class DatabaseHandler extends SQLiteOpenHelper {
// All Static variables
// Database Version
private static final int DATABASE_VERSION = 1;
// Database Name
private static final String DATABASE_NAME = "contactsManager";
// Contacts table name
private static final String TABLE_CONTACTS = "contacts";
// Contacts Table Columns names
private static final String KEY_ID = "id";
private static final String KEY_NAME = "name";
private static final String KEY_PH_NO = "phone_number";
public DatabaseHandler(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
// Creating Tables
@Override
public void onCreate(SQLiteDatabase db) {
String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_CONTACTS + "("
+ KEY_ID + " INTEGER PRIMARY KEY," + KEY_NAME + " TEXT,"
+ KEY_PH_NO + " TEXT" + ")";
db.execSQL(CREATE_CONTACTS_TABLE);
}
// Upgrading database
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// Drop older table if existed
db.execSQL("DROP TABLE IF EXISTS " + TABLE_CONTACTS);
// Create tables again
onCreate(db);
}
Deinstallieren Sie die App und führen Sie die App erneut auf Ihrem Gerät aus. Ich denke, das Problem hängt mit Ihrer Datenbankversion zusammen (weil Sie nach der ersten Ausführung Änderungen in der Tabellenspalte hatten, so dass sie aufgrund Ihrer Datenbankversion nicht aktualisiert werden). –
@ReadyAndroid Tatsächlich. So peinlich ... Danke Mann! – JasonM