我的问题是为什么这个查询不起作用?
Cursor c = db.rawQuery("SELECT * FROM tbl_staff WHERE PMajor = '%" + spin.getSelectedItem().toString() + "%'", null);
Cursor c
:它是用于处理我的查询的光标
tbl_staff
:我的表格包含PName
,PMajor
,PCert
spin
:是一个微调器,它具有我的数据库查询所需的值。
当我使用时:
if (c.moveToNext())
else (log.d("error query","couldn't do the query!");)
转到else
语句,moveToNext()
无效。
答案 0 :(得分:2)
不使用检查相等性的=
,而是使用与模式匹配的关键字LIKE
。
Cursor c = db.rawQuery("SELECT * FROM tbl_staff WHERE PMajor LIKE '%" + spin.getSelectedItem().toString() + "%'", null);