I'm trying to get records in my table. I'm using this code
if(c!=null){
if(c.moveToFirst()) {
String tipId = c.getString(c.getColumnIndex(DAO.TIP_ID)).toString().trim();
System.out.println("tipId: "+ tipId);
}else{
// Handle no rows returned
System.out.println("Handle no rows returned");
}
}else{
System.out.println("debug Cursor , cannot be created");
}
But it gives me the following exception
Couldn't read row 0, col -1 from CursorWindow. Make sure the Cursor is initialized correctly before accessing data from it.
and it refers to that line:
String tipId = c.getString(c.getColumnIndex(DAO.TIP_ID)).toString().trim();
hope anyone helps me to fix this. Thanks in advance.
In your code
c.getColumnIndex(DAO.TIP_ID)
is returning -1. This means value of DAO.TIP_ID doesnot match with any column name of table .Check if this value is correct and matches with a column name of the table you are accessing
add following line before the line which causes problem and post the Logcat output here
Log.v("out-data",DAO.TIP_ID+" "+c.getColumnIndex(DAO.TIP_ID)+" "+c.getColumnName(0));
(add import statement import android.util.Log; in beginning of your code)