sqlite 데이터베이스, listview 및 arraylist.By 버튼을 클릭하여 데이터를 데이터베이스에 삽입 한 다음 커서를 사용하여 데이터를 추출하고 '선택'하여 이상적으로 추출하려고합니다.ListView가 배열에서 항목을 업데이트하지 않습니다.
다음 활동에서 onCreate 방법에서 일어난다 :
lstitem=new ArrayList<String>();
listadap=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,lstitem);
l1=(ListView)findViewById(R.id.listView1);
l1.setAdapter(listadap);
l1.setVisibility(View.VISIBLE);
그리고 코드를 클릭 버튼을
일을 다음을 수행하도록되어, 오프 listview.Following에 반영해야 할 것은 같은 코드입니다 값을 아주 잘 삽입하고 있지만 뭔가 궁금해 Cursor 개체 및 그 인스턴스화 'rawQuery'를 사용하여 그것에 대해 확실하지 : MainActivity.myDataBase.openDatabase("/data/data/packagename/databases/tablename", null,MainActivity.myDataBase.OPEN_READWRITE);
MainActivity.myDataBase.execSQL("INSERT INTO " +
MainActivity.tablename +
" Values ('"+ finalnumber +"','"+ name +"','"+ message +"','"+ event +"','"+ ldate +"');");
Cursor cu = MainActivity.myDataBase.rawQuery("SELECT Name FROM " + MainActivity.tablename + " WHERE Date =" + ldate +";" , null);
cu.moveToFirst();
Log.d("first rec", cu.toString());
while(cu.isAfterLast())
{
try{
lstitem.add(cu.getString(0));
Log.d("first list item",lstitem.get(0)); //this is not returning any value in logcat.
Log.d("first rec", cu.getString(0));// this is returning garbled value in logcat
cu.moveToNext();
}
catch(Exception e)
{
e.printStackTrace();
}
}
내 코드가 잘못되어 있는지 여부를 명확하게 설명합니다. 감사합니다.
를 사용하여 배열에 데이터를 삽입 한 후? 왜 select가 아닌 rawQuery를 사용합니까? 'cu.toString()'은 커서에 대한 설명을 반환합니다. 가장 이해하기 쉽지 않은 것 같다. 내 생각 엔 귀하의 쿼리가 결과를 반환하지 않습니다. – njzk2