Android SQL查询不从数据库读取数据

Android SQL查询不从数据库读取数据,android,sql,Android,Sql,所以我有两个游标,从数据库读取数据并将数据写入字符串,但即使数据库存储了数据,游标也总是空的。我向SQLite管理器检查了数据库是否包含存储的数据。 Log Cat表示名为:IF1和IF2的日志被执行。 这是我的密码,我希望有人能找出问题所在 String var; final TextView t = (TextView) findViewById(R.id.textView2); final TextView t2 = (TextView) findViewById(R.id.textVie

所以我有两个游标,从数据库读取数据并将数据写入字符串,但即使数据库存储了数据,游标也总是空的。我向SQLite管理器检查了数据库是否包含存储的数据。 Log Cat表示名为:IF1和IF2的日志被执行。 这是我的密码,我希望有人能找出问题所在

String var;
final TextView t = (TextView) findViewById(R.id.textView2);
final TextView t2 = (TextView) findViewById(R.id.textView3);
Intent intent = getIntent();
var = intent.getStringExtra("datum");   

SQLiteDatabase db = openOrCreateDatabase ("MyDB", MODE_PRIVATE, null);

String q =" SELECT COALESCE (znak, '') as znak,COALESCE (sprava, '') as sprava, COALESCE(serija, '') as serija, COALESCE(podatak, '') as podatak, COALESCE(ponavljanja, '') as ponavljanja, vrijeme FROM tablica WHERE vrijeme LIKE '"+ var + "'" ;
Cursor c = db.rawQuery(q, null);      

String xy = "SELECT vrijeme FROM tablica WHERE vrijeme LIKE '"+ var + "'";
Cursor dd = db.rawQuery(xy, null);

if (dd.getCount() < 1) {
    Log.d("LIST.DETAILS", "IF1");
    dd.close();
    db.close();
    Toast.makeText(NapredakActivity.this, "Empty!", Toast.LENGTH_SHORT).show();
    startActivity(new Intent(this, calendar.class));
} else {
    String i = "";

    dd.moveToFirst();
    String st2 = dd.getString(dd.getColumnIndex("vrijeme"));
    i =  "Datum:" +"\t" + st2;
    t2.setText(i);
    dd.close(); 
}

if (c.getCount() < 1) {
    Log.d("LISTA.DETALJI", "IF2");
    c.close();
    db.close();
    Toast.makeText(NapredakActivity.this, "Empty!", Toast.LENGTH_SHORT).show();
    startActivity(new Intent(this, calendar.class));
} else {
    String j = "";

    c.moveToFirst();
    do {
        String cm55 = c.getString(c.getColumnIndex("sprava"));
        String cm = c.getString(c.getColumnIndex("serija"));
        String cm2 = c.getString(c.getColumnIndex("podatak"));
        String cm3 = c.getString(c.getColumnIndex("ponavljanja"));
        String cm_znak = c.getString(c.getColumnIndex("znak"));

        j = j +cm55+ "\n" + cm + "\t"  +cm2 +cm_znak + cm3 ;
    } while (c.moveToNext());

    t.setText(j);
    c.close();
    db.close();
}

我认为您缺少WHERE子句中的通配符:

"vrijeme LIKE '%"+ var + "%'"
否则:

"vrijeme LIKE '"+ var + "'"
同:

"vrijeme = '"+ var + "'"
而且我猜英语不是你的第一语言,但是你的变量名非常神秘。考虑使用更多描述性的名称,它只帮助代码的可读性。