Курсор базы данных всегда получает только одну строку - PullRequest
0 голосов
/ 05 января 2011

Я пытаюсь получить содержимое базы данных в представлении List, но не могу их отобразить. Поскольку курсор содержит только один элемент, не знаю почему, но он не отображается в списке.

Я также взял ссылку ListActivity на developer.android, но не смог решить проблему. Может ли кто-нибудь здесь помочь мне !!

Я отправляю свой код:

setContentView(R.layout.simple_list_item_1);    
System.out.println("Creating db");     

mDatabase = openOrCreateDatabase(Helper.DATABASE_NAME, 
                    SQLiteDatabase.CREATE_IF_NECESSARY, null);    
System.out.println("Created db");  

//String[] args= {Long.toString(id)};  

mDatabase.execSQL(Helper.CREATE_TABLE);    
System.out.println("Creating table");  

addContents();  
addContents();  
addContents();  

String[] fields = {Helper.ID, Helper.DESC, Helper.DOSAGE};  

calendarData = mDatabase.query(Helper.TABLE_NAME, fields, null, null, 
                       Helper.DESC, null, null);  

int count = calendarData.getCount();    
System.out.println("Queried db: "+count);  

startManagingCursor(calendarData);  

int[] fieldTextViews = {android.R.id.text1,android.R.id.text2};  

ListAdapter adapter = new SimpleCursorAdapter(this, android.R.layout.two_line_list_item, 
                              calendarData, fields, fieldTextViews);  
setListAdapter(adapter);  

Ответы [ 2 ]

0 голосов
/ 05 января 2011

Не зная, что делает addContents(), мы не знаем, каково содержимое базы данных ... т.е. вы пытаетесь вставить одну и ту же запись три раза, но вторые две попытки не вставляются из-за конфликта?

Но поскольку вы, похоже, используете эту версию с семью параметрами SQLiteDatabase.query(), вы передаете константы "DESC" в качестве параметра groupBy.Это может объяснить, почему вы получаете только один результат.

Предположительно, вы хотите orderBy вместо этого имени столбца?

0 голосов
/ 05 января 2011

Sweety System.out.println не работает на Android, замените его на Log.d (TAG, msg) , чтобы увидеть выходные данные в DDMS.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...