2015-03-03 3 views
0

У моего приложения Android есть 2 таблицы Projects и Tasks.Курсор не работает в Android sqlite

Каждый Project может иметь несколько Tasks.

Как ниже

enter image description here

Теперь я хочу суммировать все значения удельного веса одного task таблицы

Я сделал это .. но вопрос его добавления значения пропорции от всех таблиц задач !

Курсор я кодируются следующим образом

public int sumproportion(long projectId){ 

    int value = 0; 
    int p = 0; 

    Cursor cu = mDatabase.rawQuery("SELECT * FROM " + DBHelper.TABLE_TASKS, null); 

    ArrayList temp = new ArrayList(); 
    if (cur != null) { 
     if (cur.moveToFirst()) { 
      do { 
       temp.add(cur.getString(cur.getColumnIndex("proportion"))); // "Title" is the field name(column) of the Table     
      } while (cur.moveToNext()); 
     } 
    }  

    Object ia[] = temp.toArray(); 

    for(int i=0; i<ia.length; i++) 
    { 
    p = Integer.parseInt((String) ia[i]); 
    value = value + p; 

    } 
    System.out.println("Value is: " + value); 

    return value;  
} 

Когда я добавил курсор, как показано ниже

  Cursor cur = mDatabase.query(DBHelper.TABLE_TASKS, mAllColumns, 
      DBHelper.COLUMN_TASK_PROJECT_ID + " ="+String.valueOf(projectId), 
      null, null, null, null); 

Это ничего не добавляет. Может ли кто-нибудь помочь исправить это, пожалуйста?

+0

Я не вижу предложения WHERE в вашем SQL. Тогда, конечно, вы получите все строки в результате. –

+0

Я не уверен, но насколько я знаю! DBHelper.COLUMN_TASK_PROJECT_ID + "=" + String.valueOf (projectId) - это предложение WHERE во втором курсоре, которое я использовал ... –

+0

Таким образом, получается строка, и вы можете напечатать эту строку. Это поможет в отладке SQL. –

ответ

0

Прежде всего, вы можете использовать запрос типа SELECT SUM(proportion) from TABLE_TASK. proportion должен иметь числовой тип.

Во-вторых, убедитесь, что ваш курсор возвращает любые строки. Вероятно, вы ошибаетесь projectId, если нет строк.

+0

Я использую тот же projectId в другой функции, и он отлично работает! Что касается пропорций. Я имею в виду, могу сделать это для всех задач! так это работает! проблема заключается в получении выборочных пропорций для добавления, что из-за запроса выбора, я думаю –

Смежные вопросы