public class DataBaseHelper extends SQLiteOpenHelper
{
public static final String DATABASE_NAME="register.db";
public static final String TABLE_NAME="registration";
public static final String COL_1="ID";
public static final String COL_2="FirstName";
public static final String COL_3="LastName";
public static final String COL_4="Password";
public static final String COL_5="Email";
public static final String COL_6="Phone";
public DataBaseHelper(Context context) {
super(context,DATABASE_NAME,null,1);}
@Override
public void onCreate(SQLiteDatabase sqLiteDatabase) {
sqLiteDatabase.execSQL("create table "+TABLE_NAME+"(ID INTEGER PRIMARY
KEY AUTOINCREMENT, FirstName TEXT,LastName TEXT,Password TEXT,Email
TEXT,Phone TEXT)");}
@Override
public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) {
sqLiteDatabase.execSQL("DROP TABLE IF EXISTS " +TABLE_NAME); //Drop
older table if exists
onCreate(sqLiteDatabase);
}
public int checkusercredentials(String email,String password){
Log.i("INISDE","CHECK USER ");
SQLiteDatabase db=this.getWritableDatabase();
try{
int i=0;
Cursor c=null;
c=db.rawQuery("select * from "+TABLE_NAME+"where "+ "Email=? and
Password=?",new String[]{email,password});
c.moveToNext();
i=c.getCount();
c.close();
return i;
}catch(Exception e)
{e.printStackTrace();}
return 0;
}
In my Code, checkusercredentials is called when user clicks SIGNIN button.
The Error that I face is in c=db.rawQuery("select * from "+TABLE_NAME+"where "+ "Email=? and Password=?",new String[]{email,password});
I get an error in the '=' symbol after Email and the error reads Expected compound operator,join operator,..., WHERE got'='
The Logcat reads FATAL EXCEPTION: main
Process: com.example.android.login, PID: 26858
android.database.sqlite.SQLiteException: near "=": syntax error (code 1): ,
while compiling: SELECT * FROM registrationWHERE Email=? AND Password=?
at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native
Method)
at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:887)
at
android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:498)
at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:44)
at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1316)
at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1255)
at com.example.android.login.DataBaseHelper.checkusercredentials(DataBaseHelper.java:62)
at com.example.android.login.MainActivity$1.onClick(MainActivity.java:43)
at android.view.View.performClick(View.java:5207)
at android.view.View$PerformClick.run(View.java:21177)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:5438)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:738)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:628)
WHAT IS THE ERROR?