任何人都可以帮助我进行这些数据库查询吗

Can any one help me with these Database query

我想以 String 或 int 值获取此游标数据库查询的结果,但不能。我知道 coursor.getstring 或 getint 但我在以下情况和查询函数中应用了 problem。下面是带有查询的函数。我创建了我的数据库 java activity,这个方法就在其中...

public Cursor getUpdatedAmount(){
String amountQuery="select sum(amount) from travelling_exp where call_id=1;";
Cursor cursor = myDatabase.rawquery(amountQuery,null);
return cursor;
}

查询工作正常,没有任何错误。 基本上我想要删除或更改我的数据库后的金额列的总和,保存并在编辑文本中显示总和值。但问题是我无法将游标值转换为值字符串或 int。

到目前为止,这就是我在其他 java 文件中实现上述数据库查询功能的方式:

Cursor cursor = myDB.getUpdatedAmount();

如果金额列中的值为 1000,2000,3000,则函数 return 的总金额为 ex,则上述查询将 return 总和 = 6000。所以我想保存并在编辑文本中显示 6000。 我尝试使用 .toString 并找到其他可行的方法,但没有成功。 谁能帮我解决这个问题。它对我和我的项目非常重要。

提前致谢

这真的没有那么难,如果你去测试一下 getInt(0) 你会发现你已经找到了答案,但答案就在这里

由于您只选择 SUM,因此只有 1 列和 1 行将被 returned,这就是 getInt(0) 起作用的原因。

public String getUpdatedAmount(){
    String amountQuery="select sum(amount) from travelling_exp where call_id=1;";
    Cursor cursor = myDatabase.rawquery(amountQuery,null);
    if(cursor.moveToFirst()){
        return "" + cursor.getInt(0);
    }
}

注意:我已将您的函数更改为 return a String 而不是 Cursor

所以你可以这样使用它:

txtTotal.setText(getUpdatedAmount());