Java 如何通过查询获取sqlite表中特定名称的编号

Java 如何通过查询获取sqlite表中特定名称的编号,java,android,sqlite,select,datatable,Java,Android,Sqlite,Select,Datatable,我有一个存储姓名和人数的表。现在我想在sqlite helper类中创建一个方法,它将返回我将在该方法中传递其姓名的特定人员的编号 我的代码有问题 这是我的密码 public String fetchGroup(SQLiteDatabase inDatabase, String valueCheck){ String query = "SELECT * FROM groups WHERE groupname='" + valueCheck; Cursor cursor =

我有一个存储姓名和人数的表。现在我想在sqlite helper类中创建一个方法,它将返回我将在该方法中传递其姓名的特定人员的编号

我的代码有问题

这是我的密码

public String fetchGroup(SQLiteDatabase inDatabase,  String valueCheck){

    String query = "SELECT * FROM groups WHERE groupname='" + valueCheck;

    Cursor  cursor = inDatabase.rawQuery(query,null);
    String place = cursor.getString(cursor.getColumnIndex("contactid"));
       return place;
问完你的问题后做什么

 int count = 0;
 while (cursor.moveToNext()) {
    // increment variable
    count++;
}
迭代后,在查询完成后,您将获得计数数

 int count = 0;
 while (cursor.moveToNext()) {
    // increment variable
    count++;
}

迭代后,您将获得计数数

在读取数据之前,请注意使用
cursor.moveToFirst()
命令

否则,您可以修改查询,只返回这个数字,而不用计算Java中的人数

大概是这样的:

public String fetchGroup(SQLiteDatabase inDatabase,  String valueCheck){

    String query = "SELECT COUNT(id) FROM groups WHERE groupname=\"" + valueCheck + "\"";

    Cursor  cursor = inDatabase.rawQuery(query, null);
    cursor.moveToFirst();
    int place = cursor.getInt(0);
    return String.valueOf(place);
}

在读取数据之前,请注意使用
cursor.moveToFirst()
命令

否则,您可以修改查询,只返回这个数字,而不用计算Java中的人数

大概是这样的:

public String fetchGroup(SQLiteDatabase inDatabase,  String valueCheck){

    String query = "SELECT COUNT(id) FROM groups WHERE groupname=\"" + valueCheck + "\"";

    Cursor  cursor = inDatabase.rawQuery(query, null);
    cursor.moveToFirst();
    int place = cursor.getInt(0);
    return String.valueOf(place);
}

您没有附加结束单引号:
String query=“SELECT*FROM groupname=”+valueCheck+”但按此方式进行检查:
String query=“从groupname=?”的组中选择*;Cursor Cursor=inDatabase.rawQuery(查询,新字符串[]{valueCheck})参考本教程您没有附加结束单引号:
String query=“SELECT*FROM groupname=”+valueCheck+”但按此方式进行检查:
String query=“从groupname=?”的组中选择*;Cursor Cursor=inDatabase.rawQuery(查询,新字符串[]{valueCheck})请参阅本教程