Note that there are some explanatory texts on larger screens.

plurals
  1. POMade new SQLitedatabase Table does not exist
    primarykey
    data
    text
    <p>My old SQLitedatabase wasn't working to well the way I wanted it to so I figured to delete my old DBAdapter folder and DBHelper folder and made a new Database from the ground up with 2 new tables,new column names and a new DATABASE_NAME but after I linked up everything to my app with the new Strings and Cursors I'm getting a nullpoint crash and I'm getting these errors in my logcat.</p> <p>UPDATE: I've changed the onCreate parameter to db and I solved the invalid tables error but now I have a Table "Players"(MyFirstTable) does not exist error.</p> <p>UPDATE:NEW LOGCAT</p> <pre><code>04-19 19:56:02.781: E/AndroidRuntime(9179): FATAL EXCEPTION: main 04-19 19:56:02.781: E/AndroidRuntime(9179): android.database.sqlite.SQLiteException: no such table: PLAYERS (code 1): , while compiling: SELECT _id, USERNAME FROM PLAYERS 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:882) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:493) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteProgram.&lt;init&gt;(SQLiteProgram.java:58) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteQuery.&lt;init&gt;(SQLiteQuery.java:37) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1314) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteDatabase.queryWithFactory(SQLiteDatabase.java:1161) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1032) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1200) 04-19 19:56:02.781: E/AndroidRuntime(9179): at com.fullfrontalgames.numberfighter.DBAdapter.getUsername(DBAdapter.java:143) 04-19 19:56:02.781: E/AndroidRuntime(9179): at com.fullfrontalgames.numberfighter.Findfriends$1.onClick(Findfriends.java:39) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.view.View.performClick(View.java:4106) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.view.View$PerformClick.run(View.java:17052) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.os.Handler.handleCallback(Handler.java:615) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.os.Handler.dispatchMessage(Handler.java:92) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.os.Looper.loop(Looper.java:137) 04-19 19:56:02.781: E/AndroidRuntime(9179): at android.app.ActivityThread.main(ActivityThread.java:5059) 04-19 19:56:02.781: E/AndroidRuntime(9179): at java.lang.reflect.Method.invokeNative(Native Method) 04-19 19:56:02.781: E/AndroidRuntime(9179): at java.lang.reflect.Method.invoke(Method.java:511) 04-19 19:56:02.781: E/AndroidRuntime(9179): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:792) 04-19 19:56:02.781: E/AndroidRuntime(9179): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555) 04-19 19:56:02.781: E/AndroidRuntime(9179): at dalvik.system.NativeStart.main(Native Method) </code></pre> <p>DBAdapter class</p> <pre><code> package com.fullfrontalgames.numberfighter; import android.content.ContentValues; import android.content.Context; import android.database.Cursor; import android.database.SQLException; import android.database.sqlite.SQLiteDatabase; import android.database.sqlite.SQLiteException; import android.database.sqlite.SQLiteOpenHelper; import android.util.Log; public class DBAdapter { static final String KEY_ROWID = "_id"; static final String KEY_USERNAME = "USERNAME"; static final String KEY_PASSWORD = "PASSWORD"; static final String KEY_EMAIL = "EMAIL"; static final String KEY_NUMBERINPUT = "NUMBERINPUT"; static final String KEY_SCORE = "SCORE"; static final String KEY_FRIENDS = "FRIENDS"; static final String TAG = "DBAdapter"; static final String DATABASE_NAME = "NFDatabase"; static final String DATABASE_TABLE1 = "PLAYERS"; static final String DATABASE_TABLE2 = "FRIENDSLIST"; static final int DATABASE_VERSION = 1; static final String DATABASE_CREATE_TABLE1 = "create table PLAYERS (_id integer primary key autoincrement," + "USERNAME text not null,PASSWORD text not null,EMAIL text not null,NUMBERINPUT text not null,,SCORE text not null;"; static final String DATBASE_CREATE_TABLE2 = "create table FRIENDSLIST (_id integer primary key autoincrement," + "FRIENDS text not null,USERNAME text not null,NUMBERINPUT text not null,SCORE text not null;"; final Context context; DatabaseHelper DBHelper; static SQLiteDatabase db; public DBAdapter(Context ctx) { this.context = ctx; DBHelper = new DatabaseHelper(context); } private static class DatabaseHelper extends SQLiteOpenHelper { public DatabaseHelper(Context context) { // TODO Auto-generated constructor stub super(context, DATABASE_NAME, null, DATABASE_VERSION); } @Override public void onCreate(SQLiteDatabase db) { // TODO Auto-generated method stub try { db.execSQL(DATABASE_CREATE_TABLE1); db.execSQL(DATABASE_CREATE_TABLE2); } catch (SQLException e) { e.printStackTrace(); } } @Override public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { // TODO Auto-generated method stub Log.w(TAG, "Upgrading database from version " + oldVersion + " to " + newVersion + ", which will destroy all old data"); db.execSQL("DROP TABLE IF EXISTS PLAYERS,FRIENDSLIST"); onCreate(db); } } public DBAdapter open() throws SQLiteException { db = DBHelper.getWritableDatabase(); return this; } public void close() { DBHelper.close(); } // PLAYERS TABLE CRUD public void insertPlayer(String Username, String Password, String Email) { ContentValues initialValues = new ContentValues(); initialValues.put("USERNAME", Username); initialValues.put("PASSWORD", Password); initialValues.put("EMAIL", Email); } public boolean deletePlayer(String username) { return db.delete("PLAYERS", KEY_ROWID + " = " + "_id", null) &gt; 0; } public Cursor getAllPlayers() { return db.query(null, new String[] { "_id", "USERNAME", "PASSWORD", "EMAIL" }, null, null, null, null, null, null); } public String getData() { String[] columns = new String[] { "_id", "USERNAME", "PASSWORD" }; Cursor mCursor = db.query("PLAYERS", columns, null, null, null, null, null); String result = ""; int iRow = mCursor.getColumnIndex(KEY_ROWID); int iName = mCursor.getColumnIndex(KEY_USERNAME); for (mCursor.moveToFirst(); !mCursor.isAfterLast(); mCursor.moveToNext()) { result = mCursor.getString(iRow) + " " + mCursor.getString(iName) + "/n"; } return result; } public Cursor getPlayer(long rowid) throws SQLException { Cursor mCursor = db.query(true, "PLAYERS", new String[] { "_id", "USERNAME" }, KEY_ROWID + " = " + "_id", null, null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } return mCursor; } public String getUsername(String username) { // TODO Auto-generated method stub String[] columns = new String[] { "_id", "USERNAME" }; Cursor mCursor = db.query("PLAYERS", columns, null, null, null, null, null); String result = ""; int iRow = mCursor.getColumnIndex(KEY_ROWID); int iName = mCursor.getColumnIndex(KEY_USERNAME); for (mCursor.moveToFirst(); !mCursor.isAfterLast(); mCursor.moveToNext()) { result = mCursor.getString(iRow) + " " + mCursor.getString(iName) + "/n"; } return result; } public String getSinlgeEntry(String Username) { Cursor cursor = db.query("PLAYERS", null, " USERNAME=?", new String[] { Username }, null, null, null); if (cursor.getCount() &lt; 1) // UserName Not Exist { cursor.close(); return "NOT EXIST"; } cursor.moveToFirst(); String password = cursor.getString(cursor.getColumnIndex("PASSWORD")); cursor.close(); return password; } public boolean updatePlayer(long _id, String Username, String Password, String Email) { ContentValues args = new ContentValues(); args.put("USERNAME", Username); args.put("PASSWORD", Password); args.put("EMAIL", Email); return db.update("PLAYERS", args, KEY_ROWID + " = " + _id, null) &gt; 0; } // FRIENDS TABLE CRUD public void insertFriend(String Friend) { ContentValues initialValues = new ContentValues(); initialValues.put("FRIENDS", Friend); db.insert("FRIENDSLIST", null, null); } public boolean deleteFriend(String deletedfriend) { return db.delete("FRIENDSLIST", KEY_ROWID + " = " + "_id", null) &gt; 0; } public Cursor getAllFriends() { return db.query(null, new String[] { "_id", "FRIENDS" }, null, null, null, null, null, null); } public Cursor getFriend(long rowid) throws SQLException { Cursor mCursor = db.query(true, "FRIENDSLIST", new String[] { "_id", "FRIENDS" }, KEY_ROWID + " = " + "_id", null, null, null, null, null); if (mCursor != null) { mCursor.moveToFirst(); } return mCursor; } public boolean updateFriend(long _id, String Friends) { ContentValues args = new ContentValues(); args.put("FRIENDS", Friends); return db.update("FRIENDSLIST", args, KEY_ROWID + " = " + _id, null) &gt; 0; } } </code></pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload