查询无法使用 android 中的 WHERE 子句从多列获取数据

query fail getting data from multiple columns using WHERE clause in android

我已经尝试使用以下代码 return 多个列值与 android

中的 where 子句
public Cursor getData(String text) {
    SQLiteDatabase db = this.getWritableDatabase();
    String[] columns = new String[]{"Client","Action","Value","Period"};
    Cursor cr = db.query("phrase_table",columns,"phrase = ?",new String[]{text},null,null,null);
    return cr;
}

但是,游标 return 仅 "Client" 列值。这是光标到字符串的代码:

Cursor c = vdb.getData(text);
    ArrayList<String> line= new ArrayList<>();
    if (c.moveToFirst()) {
        do{
            line.add(c.getString(0));
        }while(c.moveToNext());
    }
    String resc="";
    for(String a:line){
        resc += a;
    }
    Toast.makeText(this,resc,Toast.LENGTH_LONG).show();

也试过这个:

Cursor c = vdb.getData(text);
    String line = "";
    if (c.moveToFirst()) {
        do{
            line += c.getString(0);
        }while(c.moveToNext());
    }

    Toast.makeText(this,resc,Toast.LENGTH_LONG).show();

但是结果是一样的

您正在从游标 "Client" 获取单个数据,请更新您的其他游标

的代码
if (c.moveToFirst()) {
  do{
    line += c.getString(0);
    line += c.getString(1);
    line += c.getString(2);
    line += c.getString(3);
  }while(c.moveToNext());
}