Hi,
ich habe eine App, in der ich Notizen eintragen und in die Datenbank speichern möchte. allerdings schmeißt das Programm immer eine NullPointerException bei dbHelper.getWritabeleDatabase()...
Was ist mein Fehler?
dbHelper:
Die Commands Klasse:
In der Klasse Ugv werden Variablen zwischengespeichert...
ich habe eine App, in der ich Notizen eintragen und in die Datenbank speichern möchte. allerdings schmeißt das Programm immer eine NullPointerException bei dbHelper.getWritabeleDatabase()...
Was ist mein Fehler?
dbHelper:
Java:
package com.example.arthurferdinand.newtz;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;
public class MySQLiteHelper extends SQLiteOpenHelper{
//Name der Datenbank
private static final String DATABASE_Name = "VERTRETUNG.db";
//Datenbankversion
private static final int DATABASE_VERSION = 1;
//Datenbank wird erstellt
public MySQLiteHelper(Context context) {
super(context, DATABASE_Name, null, DATABASE_VERSION);
}
private static final String TABLE_CREATE_NOTIZEN = ""
+ "CREATE TABLE " + Ugv.TABLE_NOTIZEN + "("
+ Ugv.TABLE_NOTIZEN_ID + " INTEGER primary key autoincrement,"
+ Ugv.TABLE_NOTIZEN_TITLE + " VARCHAR(500),"
+ Ugv.TABLE_NOTIZEN_NOTIZ + " TEXT)";
@Override
public void onCreate(SQLiteDatabase database) {
database.execSQL(TABLE_CREATE_NOTIZEN);
}
@Override
public void onUpgrade(SQLiteDatabase database, int oldVersion, int newVersion) {
//alte Datenbank löschen, wenn vorhanden (alle Daten werden gelöscht)
database.execSQL("DROP TABLE IF EXISTS" + Ugv.TABLE_NOTIZEN);
//Tabellen erneut erstellen
onCreate(database);
}
}
Die Commands Klasse:
Java:
package com.example.arthurferdinand.newtz;
import android.content.ContentValues;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.widget.Toast;
public class Commands {
private MySQLiteHelper dbHelper;
Context c1;
public Commands(Context context){
c1 = context;
dbHelper = new MySQLiteHelper(c1);
}
public int InsertNote(Ugv ugv){
//DB Verbindung wird geöffnet
SQLiteDatabase db = dbHelper.getWritableDatabase();
//Werte verwaltung
ContentValues values = new ContentValues();
values.put(ugv.TABLE_NOTIZEN_TITLE, ugv.notizTitel);
values.put(ugv.TABLE_NOTIZEN_NOTIZ, ugv.NotizInhalt);
//Insert Row
long insert = db.insert(ugv.TABLE_NOTIZEN, null, values);
db.close();
Toast.makeText(null, "New Student Insert", Toast.LENGTH_SHORT).show();
return (int) insert;
}
}
In der Klasse Ugv werden Variablen zwischengespeichert...