sql - android sqlite query no return? -
i have sqlite database , want query through db , populate listview return, listview shows 1 row return more 1 row , there no error. item class contains setters , getters.
i use method query:
filllist2(edtseach.getquery().tostring().tolowercase(),"zankodict", "id","eng",long.valueof(1),long.valueof(1794));
which method:
private void filllist2(string keyword,string table, string columnn,string column2,long num1,long num2) { if (keyword.equals(buildconfig.flavor)) { this.mylist = new arraylist(); } else if (keyword.tochararray().length < 2) { mylist.clear(); mylist.add(dbquery.a(keyword,table,columnn,column2,num1,num2)); } else { mylist.clear(); mylist.add(dbquery.a(keyword,table,columnn,column2,num1,num2)); } mylistview.setadapter(new adapteren(getactivity(), r.layout.single_row, mylist,keyword)); } }
dbquery.class
import android.database.cursor; public class dbquery { private static item itemm, itemm2; private static cursor cursor10; public static item a(string keyword,string table, string columnn,string column2, long num1,long num2) { c0101f.getdatabasehelper().opendatabase(); cursor10 = c0101f.getdatabasehelper().querydata("select * "+ table +" "+ columnn +" between "+num1+" , "+num2+ " , " +column2+ " '"+ keyword + "%'"); itemm2 = cur(table); c0101f.getdatabasehelper().closedatabase(); return itemm2; } public static item cur(string table){ switch (table) { case "zankodict": if (cursor10 != null) { if (cursor10.movetofirst()) { { itemm = new item(); itemm.setid(cursor10.getstring(0)); itemm.seteng(cursor10.getstring(1)); } while (cursor10.movetonext()); } } break; case "kudict": if (cursor10 != null) { if (cursor10.movetofirst()) { { itemm = new item(); itemm.setid(cursor10.getstring(0)); itemm.setkurd(cursor10.getstring(1)); itemm.setid2(cursor10.getlong(2)); } while (cursor10.movetonext()); } } break; case "ardict": if (cursor10 != null) { if (cursor10.movetofirst()) { { itemm = new item(); itemm.setid(cursor10.getstring(0)); itemm.setar(cursor10.getstring(1)); itemm.setid2(cursor10.getlong(2)); } while (cursor10.movetonext()); } } break; } return itemm; } }
i added array list adds items every time go through loop.
import android.database.cursor; import java.util.arraylist; /** * created rrr on 11/12/2016. */ public class dbquery { public static arraylist<item> mylist = new arraylist<item>(); public static arraylist<item> mylist2 = new arraylist<item>(); private static item itemm; private static cursor cursor10; public static arraylist<item> a(string keyword,string table, string columnn,string column2, long num1,long num2) { c0101f.getdatabasehelper().opendatabase(); cursor10 = c0101f.getdatabasehelper().querydata("select * "+ table +" "+ columnn +" between "+num1+" , "+num2+ " , " +column2+ " '"+ keyword + "%'"); mylist2 = cur(table); c0101f.getdatabasehelper().closedatabase(); return mylist2; } public static arraylist<item> cur(string table){ switch (table) { case "zankodict": if (cursor10 != null) { if (cursor10.movetofirst()) { { itemm = new item(); itemm.setid(cursor10.getstring(0)); itemm.seteng(cursor10.getstring(1)); mylist.add(itemm); } while (cursor10.movetonext()); } } break; case "kudict": if (cursor10 != null) { if (cursor10.movetofirst()) { { itemm = new item(); itemm.setid(cursor10.getstring(0)); itemm.setkurd(cursor10.getstring(1)); itemm.setid2(cursor10.getlong(2)); mylist.add(itemm); } while (cursor10.movetonext()); } } break; case "ardict": if (cursor10 != null) { if (cursor10.movetofirst()) { { itemm = new item(); itemm.setid(cursor10.getstring(0)); itemm.setar(cursor10.getstring(1)); itemm.setid2(cursor10.getlong(2)); mylist.add(itemm); } while (cursor10.movetonext()); } } break; } return mylist; } }
Comments
Post a Comment