So i'm having a little trouble with SQLite in Android. I followed a guide with which i created a table and wrote a working method to insert data. After i had a lot of data in it i wanted to delete it again so i wrote a method which dropped my table. Now i have the problem that it won't create the table anymore. If i want to insert data it says "no such table".I don't really get why it won't create it anymore. Relevant code:
public class MeFragment extends Fragment implements View.OnClickListener {
private SQLiteDatabase newDB;
private DatabaseHelper dbHelper;
private String TABLE_NAME = DatabaseHelper.TABLE_NAME;
ArrayList<String> myCategoryList = new ArrayList<String>() {  
};
ListView lv1;
ArrayAdapter<String> adapter1;
EditText editText;
Button addButton;
public MeFragment() {
    // Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.fragment_me, container, false);
    dbHelper = new DatabaseHelper(this.getActivity());
    preFillCategories();
    getCategories();
    editText = (EditText) view.findViewById(R.id.addCategory);
    addButton = (Button) view.findViewById(R.id.addCategoryButton);
    addButton.setOnClickListener(this);
    lv1 = (ListView) view.findViewById(R.id.listView1);
    adapter1 = new ArrayAdapter<String>(this.getActivity(), android.R.layout.simple_list_item_1, myCategoryList);
    lv1.setAdapter(adapter1);
    Utility.setDynamicHeight(lv1);
    //dbHelper.removeAllData();
    return view;
}
And my Database Helper Class:
public class DatabaseHelper extends SQLiteOpenHelper {
public static final String DATABASE_NAME = "categories.db";
public static final String TABLE_NAME = "categories_table";
public static final String COL = "CATEGORYNAME";
public DatabaseHelper(Context context) {
    super(context, DATABASE_NAME, null, 1);
    SQLiteDatabase db = this.getWritableDatabase();
}
@Override
public void onCreate(SQLiteDatabase db) {
    db.execSQL("CREATE TABLE " + TABLE_NAME +" (CATEGORYNAME TEXT PRIMARY KEY)");
}
@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    Log.d("Hallo", "hallo");
    db.execSQL("DROP TABLE IF EXISTS "+TABLE_NAME);
    onCreate(db);
}
public boolean insertData(String CATEGORYNAME){
    SQLiteDatabase db = this.getWritableDatabase();
    ContentValues contentValues = new ContentValues();
    contentValues.put(COL, CATEGORYNAME);
    long result = db.insert(TABLE_NAME, null, contentValues);
    if(result == -1){
        return false;
    }
    else{
        return true;
    }
}
public void removeAllData(){
    SQLiteDatabase db = this.getWritableDatabase();
    db.execSQL("DROP TABLE "+TABLE_NAME);
}
Any help would be very much appreciated
 
    