我正在开发餐厅菜单应用程序.我的应用程序有一个sqlite表,其中包含以下列:
"id", "category", "item_name"
Run Code Online (Sandbox Code Playgroud)
category列的内容是string类型.表的主键是id.
我想检索特定类别的数据.
例如,我想检索类别中所有项目的项目名称,Veg然后在列表视图中显示此结果.
我尝试过不同的查询,但两者都无效.请帮我.
String vg ="Veg";
Cursor mCursor = database.query(true, DATABASE_TABLE, new String[] {
KEY_ROWID, KEY_CATEGORY, KEY_NAME,KEY_PRIZE,KEY_DESCRIPTION },
KEY_CATEGORY + "=" + vg , null, null, null,null, null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
Run Code Online (Sandbox Code Playgroud)
原始查询
String query = "SELECT * FROM todo WHERE category =" + vg ;
Cursor cursor = database.rawQuery(query,null);
if (cursor != null) {
cursor.moveToFirst();
}
return cursor;
Run Code Online (Sandbox Code Playgroud)
Lav*_*nya 15
试试这个:
String query = "SELECT * FROM todo WHERE category='" + vg;
Cursor cursor = database.rawQuery(query,null);
if (cursor != null) {
cursor.moveToFirst();
}
return cursor;
Run Code Online (Sandbox Code Playgroud)
Tus*_*kar 13
String query = "SELECT item_name FROM todo WHERE category =" + vg ;
Cursor cursor = database.rawQuery(query,null);
if (cursor.moveToFirst()) {
while (cursor.isAfterLast() != true) {
string itemname = cursor.getString(cursor.getColumnIndex("item_name")));
}
}
Run Code Online (Sandbox Code Playgroud)
这里moveToFirst检查是否有符合条件的项目,然后使用while循环遍历游标.字符串itemname可以由list adaper替换以填充数据.希望这可以帮助.
dbHelper = new DBHelper(getApplicationContext());
SQLiteDatabase db = dbHelper.getReadableDatabase();
Cursor cursor = db.rawQuery("select * from centuaryTbl where email='"+email+"'",null);
if (cursor.moveToFirst())
{
do
{
String s1 = cursor.getString(cursor.getColumnIndex("s1"));
String s2 = cursor.getString(cursor.getColumnIndex("s2"));
String s3 = cursor.getString(cursor.getColumnIndex("s3"));
}while (cursor.moveToNext());
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
68715 次 |
| 最近记录: |