嗨,我是Android新手并遇到问题
我的数据库中有两个字段songname和songhits的表。现在我想得到所有以字符串开头的歌曲说MATCH_STR按列表中的songhits排序。我知道sql查询但我不知道如何执行我的android app.pls帮我一个例子或正确的代码。
我的代码:
Cursor c = myDB.query(MY_DATABASE_TABLE, "songname","songname like %"+MATCH_STR+"%" , null, null,"SongHit", null);
if (c != null)
{
c.moveToFirst();
int SongNameColumn = c.getColumnIndex("SongName");
if (c.isFirst())
{
i = 0;
do {
i++;
String SongName = c.getString(SongNameColumn);
// Add current Entry to results.
results.add(SongName);
} while (c.moveToNext());
}
}
答案 0 :(得分:5)
Cursor c = myDB.query(MY_DATABASE_TABLE, "songname","songname like ?" , new String[]{"%"+MATCH_STRING+"%"}, null,"SongHit", null);
可能是这些将是一个hElp !!
答案 1 :(得分:0)
我认为你错过了像运营商
这样的单引号链接 Cursor c = myDB.query(MY_DATABASE_TABLE, "songname","songname like '%"+MATCH_STR+"%'" , null, null,"SongHit", null);
检查并更正您的查询
答案 2 :(得分:0)
尝试下面的搜索代码: -
public Cursor getROUTINENAME(String search_str) {
String query = "SELECT * FROM TBNAME where COL_NAME LIKE '%"+search_str+"%'";
Cursor mCursor = db.rawQuery(query, null);
if (mCursor != null) {
mCursor.moveToFirst();
}
return mCursor;
}
用字符串调用上面的函数。