Search code examples
androidandroid-sqlitegetter-setter

getter and setter from database android


I'm Trying To grab a complete row from a database table where I send the ID and receive the complete details Here is My Database:

  public ArrayList<Item> GetProjectToMoreDetails(String id) {
    SQLiteDatabase sqLiteDatabase = this.getWritableDatabase ();
    int ID = Integer.parseInt (id);
    Cursor cursor =  sqLiteDatabase.rawQuery ("select * from " + Projects_TABLE + " where " + PRO_ID + " = " + ID , null);

    ArrayList<Item> ProjectsArchive = new ArrayList<>();

    if (cursor != null) {
        cursor.moveToFirst ();
        for (int i = 0 ; i < cursor.getCount(); i++) {
            cursor.moveToPosition(i);
            Item data = new Item();
            data.setProjectName( cursor.getString( cursor.getColumnIndex( PRO_NAME )) );
            data.setPrice("$" + String.valueOf( cursor.getInt( cursor.getColumnIndex( PRO_GOAL )) ) );

            ProjectsArchive.add(data);
            cursor.moveToNext ();
        }
        cursor.close ();
    }else if (cursor == null){
        return null;
    }
    return ProjectsArchive;
}

Here are the Getter and setters Inside Item Class:

public String getProjectName() {
    return ProjectName;}
public void setProjectName(String projectName) {
    this.ProjectName = projectName;}

public String getPrice() {
    return price;}

public void setPrice(String price) {
    this.price = price;}

I'm Trying to call it like this but it keeps returning null From here

Item item = new Item();
    DataBaseHelper dataBaseHelper = new DataBaseHelper( getActivity() );
    dataBaseHelper.GetProjectToMoreDetails( ProjectId );
    ProjectName.setText( item.getPrice() );
    ProjectPrice.setText( item.getPrice() );

Solution

  •  ArrayList<Item> itemList = dataBaseHelper.GetProjectToMoreDetails( ProjectId );
    for(int i=0;i<itemList.size();i++){
        ProjectName.setText( itemList.get(i).getPrice() );
        ProjectPrice.setText( itemList.get(i).getPrice() );
    }    
    

    Check code snippet. You need to do like this.