I'm trying to develop my app so that it uses a database to store data about books. My knowledge of android and SQLite is scanty at best, so my code may look pretty awkward. When I try running the app, an error occurs stating that
Caused by: android.database.sqlite.SQLiteException: no such table: Library_Table (code 1): , while compiling: SELECT _id, Book_Title, Author, Length, Chapters_Read, Date_Added FROM Library_Table ORDER BY Date_Added DESC
I believe the problem arises when I call a command to query the database; I'm certain there's something I'm not doing right, but after trying to debug for weeks, I'm about to give up. I'll add the few segments of the code which I think are important to the problem.
I believe this first part creates the table(It occurs in the class which extends the sqliteopenhelper):
public void onCreate(SQLiteDatabase sqLiteDatabase) {
    String CREATE_LIBRARY_TABLE = "CREATE TABLE " + Constants.TABLE_NAME
        + "("
        + Constants.KEY_ID + " INTEGER PRIMARY KEY,"
        + Constants.TITLE_NAME + " TEXT,"
        + Constants.BOOK_AUTHOR + " TEXT,"
        + Constants.BOOK_LENGTH + " INTEGER,"
        + Constants.CHAPTERS_READ + " INTEGER,"
        + Constants.DATE_ADDED + " TEXT"
        + ");";
    sqLiteDatabase.execSQL(CREATE_LIBRARY_TABLE);
}
This next part also occurs the class that extends SQLitesOpenHelper (The line Cursor cursor = database.query; is highlited by android studio as problematic):
public ArrayList<Book> getBooks(){
    String selectQuery = "SELECT * FROM " + Constants.TABLE_NAME;
    SQLiteDatabase database = this.getReadableDatabase();
    Cursor cursor = database.query(
            Constants.TABLE_NAME,
            new String[]{
            Constants.KEY_ID,
            Constants.TITLE_NAME,
            Constants.BOOK_AUTHOR,
            Constants.BOOK_LENGTH,
            Constants.CHAPTERS_READ,
            Constants.DATE_ADDED},
            null, null, null, null,
            Constants.DATE_ADDED + " DESC");
This is the Constants class (in a separate file):
public class Constants {
    public static final String DATABASE_NAME = "LibraryDB";
    public static final int DATABASE_VERSION = 1;
    public static final String TABLE_NAME = "Library_Table";
    public static final String KEY_ID = "_id";
    public static final String TITLE_NAME = "Book_Title";
    public static final String BOOK_AUTHOR = "Author";
    public static final String BOOK_LENGTH = "Length";
    public final static String CHAPTERS_READ = "Chapters_Read";
    public static final String DATE_ADDED = "Date_Added";
}
I think the real problem is that I don't know my way around this subject particularly well; I suspect it's not a very big issue to solve.
 
     
     
    