Pedroson
Pedroson

Reputation: 109

Error when running random query in SQLite

I am trying to run a query to select a random word from a table in SQLite but when I attempt to run the app I get this error?

Random word method

public String randWord() {
    SQLiteDatabase db  = this.getWritableDatabase();
    Cursor cur = db.rawQuery("SELECT * FROM TABLE_WORDS ORDER BY RANDOM() LIMIT 1",
    new String[] { "*" }, null);

        String word = cur.getString(cur.getColumnIndex(KEY_WORD));
        return word;         
}

I get this error message when trying to run the app

01-07 14:46:24.448: E/AndroidRuntime(21664): FATAL EXCEPTION: main
01-07 14:46:24.448: E/AndroidRuntime(21664): java.lang.NoSuchMethodError:
android.database.sqlite.SQLiteDatabase.rawQuery                     

Upvotes: 1

Views: 777

Answers (1)

David M
David M

Reputation: 2541

try replacing

Cursor cur = db.rawQuery("SELECT * FROM TABLE_WORDS ORDER BY RANDOM() LIMIT 1",
  new String[] { "*" }, null);

with

Cursor cur = db.rawQuery("SELECT * FROM TABLE_WORDS ORDER BY RANDOM() LIMIT 1", null);

as you don't have any host variables

Upvotes: 3

Related Questions