DatabaseHelper.java
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME="register.db";
public static final String TABLE_NAME="registeration";
public static final String COL_1="USERNAME";
public static final String COL_2="FirstName";
SQLiteDatabase db;
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, 1);
db.execSQL("CREATE TABLE " + TABLE_NAME + " (USERNAME TEXT,FirstName TEXT)");
}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
db.execSQL("DROP TABLE IF EXISTS" +TABLE_NAME); //Drop older table if exists
onCreate(db);
}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
}
}
Mainactivity.java
public class MainActivity extends AppCompatActivity {
SQLiteOpenHelper openHelper;
SQLiteDatabase db;
Button _btnreg;
EditText _txtpass,_txtuser;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
openHelper = new DatabaseHelper(this);
_txtuser = (EditText)findViewById(R.id.txtuser);
_txtpass = (EditText)findViewById(R.id.txtpass);
_btnreg=(Button)findViewById(R.id.btnreg);
_btnreg.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
db=openHelper.getWritableDatabase();
String user=_txtuser.getText().toString();
String pass=_txtpass.getText().toString();
insertdata(user,pass);
Toast.makeText(getApplicationContext(), "register successfully",Toast.LENGTH_LONG).show();
}
});
}
private void insertdata(String user, String pass) {
ContentValues contentValues = new ContentValues();
contentValues.put(DatabaseHelper.COL_1, user);
contentValues.put(DatabaseHelper.COL_2, pass);
}
}
Error:
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.vivekpc.myapplication/com.example.vivekpc.myapplication.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.database.sqlite.SQLiteDatabase.execSQL(java.lang.String)' on a null object reference