У меня есть функция, где я хочу получить сумму значений в строке таблицы базы данных MySQL. Это мой код:Курсор возвращается 0
public int getSum(int var) {
int x=0;
// Select All Query
String selectQuery = "SELECT sum(amount) FROM donations WHERE aid = '"+aid+"'";
SQLiteDatabase db = openOrCreateDatabase("shareity", Context.MODE_PRIVATE, null);
Cursor cursor = db.rawQuery(selectQuery, null);
// looping through all rows and adding to list
if (cursor.moveToFirst()) {
do {
x = cursor.getInt(0);
} while (cursor.moveToNext());
}
// return contact list
Log.d("id", "Id" + "," + x);
return x;
}
И я звоню это в OnCreate(), как это:
getSum(idk);
где idk
это целое число. Но мое это возвращает 0. Могу ли я узнать, почему, пожалуйста? Строка таблицы Я хочу получить сумму, также целое число.
Попробуйте выполнить запрос непосредственно в mysql и посмотрите, что вы получаете за данное 'help'..soso' WHERE help = '"+ aid +"' ";' вы, возможно, добавили неправильную переменную, так как аргумент функции говорит свой 'var' –
@AbhikChakraborty,' var' соответствует 'idk', который я посылаю в функции onCreate() правильно? Я инициировал 'idk = 0' в классе. Это имеет значение? –
в' getSum' у вас нет 'help' – Blackbelt