Получить данные из базы данных для графа Android - PullRequest
1 голос
/ 27 апреля 2011

Я установил базу данных SQLite в моем приложении для Android.Я использовал учебник от Google, и моя база данных работает (я могу поместить в нее данные и прочитать их в другой форме).Теперь я хочу получить цену столбца и поместить ее в график.Я могу нарисовать график уже с жестко закодированными значениями.Я пытаюсь:

Cursor item0 = _dbHelper.fetcAllBoughtItems();
startManagingCursor(item0);
String xaxis[]=new String[4];
        xaxis[0]= item0.getString(item0.getColumnIndexOrThrow(databaseManager.KEY_BOUGHT_ITEM));
        xaxis[1]="2007";
        xaxis[2]="2008";
        xaxis[3]="2009";

Я получаю следующее сообщение об ошибке (я знаю, что оно говорит мне, что не так, но я не могу это исправить)

04-27 10:03:21.382: ERROR/AndroidRuntime(6920): java.lang.RuntimeException: Unable to start activity ComponentInfo{Adforce.files/Adforce.files.summarySpendBudget}: android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 5

Может кто-нибудь помочь мнепожалуйста?С уважением

Редактировать: fetchAllBoughtItems () код: public Cursor fetchAllBoughtItems(){ //function to fetch all bought items return mDb.query(DATABASE_TABLE_ItemB, new String[]{KEY_ROWID_ItemB, KEY_BOUGHT_ITEM, KEY_PRICE_ItemB }, null, null, null, null, null); }

1 Ответ

1 голос
/ 27 апреля 2011

fetcAllBoughtItems () возвращает курсор без столбца с именем databaseManager.KEY_BOUGHT_ITEM

fix fetcAllBoughtItems ()

EDIT:

добавить item0.moveToFirst() перед item0.getString(... и проверьте, вернется ли true

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