1

I'm trying to get a single row from database.But it is not generated query. The questions marks still seems. What am i missing ?

 public static User getSingleUser(String email,String password)
    {
        User user = new User();

        SQLiteDatabase db = DatabaseManager.getInstance().openDatabase();

        String selectQuery = " SELECT * FROM " + User.TABLE + " WHERE "
                + User.KEY_EMAIL + "=?"+ " AND " + User.KEY_PASSWORD
                + "=?" ;

        Cursor cursor = db.rawQuery(selectQuery,new String[]{email,password},null);

        if (cursor.moveToFirst()) {
            do {

                user.setId(cursor.getInt(cursor.getColumnIndex("UserId")));
                user.setFirstname(cursor.getString(cursor.getColumnIndex("Firstname")));
                user.setLastname(cursor.getString(cursor.getColumnIndex("Lastname")));
                user.setEmail(cursor.getString(cursor.getColumnIndex("Email")));
                user.setPassword(cursor.getString(cursor.getColumnIndex("Password")));
                user.setIsActive(cursor.getInt(cursor.getColumnIndex("IsActive")));

            } while (cursor.moveToNext());
        }

        return user;
    }
}
Trinity
  • 486
  • 8
  • 27

2 Answers2

2

Try this,

    String selection = User.KEY_EMAIL + "=?"+ " AND " + User.KEY_PASSWORD + "=?";
    String[] selectionArgs = new String[]{ email, password };
    Cursor cursor = db.query(User.TABLE, null, selection, selectionArgs, null, null, null);
K Neeraj Lal
  • 6,768
  • 3
  • 24
  • 33
0

try to use native android query as below -

Cursor cursor = db.query(User.TABLE, null, User.KEY_EMAIL + "=? and " + User.KEY_PASSWORD + "=?", new String[] {email, password}, null, null, null );
kevz
  • 2,727
  • 14
  • 39
  • @Timosis: I find it easy to use that way. – kevz Mar 18 '16 at 09:21
  • @Timosis: you may check these link for performance http://stackoverflow.com/questions/8830753/android-sqlite-which-query-query-or-rawquery-is-faster and http://stackoverflow.com/questions/8435932/rawquery-vs-database-query – kevz Mar 18 '16 at 09:25