gpt4 book ai didi

android - 在 Android 中搜索 SQLite 数据库

转载 作者:行者123 更新时间:2023-11-29 16:19:07 25 4
gpt4 key购买 nike

我在我的 Android 应用程序中搜索 SQLite 数据库时遇到了一些问题。我使用搜索界面将搜索变量 (searchActivity.query) 传递给此:

   //searchActivity.query obtained from: 
//String query = searchActivity.getStringExtra(SearchManager.QUERY);

String searchString = "'" + searchActivity.query + "%'";

//sqlitedb is called via: private SQLiteDatabase sqlitedb;

Cursor cursor = sqlitedb.query(DATABASE_TABLE, new String[]
{"id", "FirstName","LastName"},
"FirstName LIKE " + searchString, null, null, null, null);

int index_CONTENT = cursor.getColumnIndex(FirstName);

for(cursor.moveToFirst(); !(cursor.isAfterLast()); cursor.moveToNext()){
result = result + cursor.getString(index_CONTENT) + "\n";
}

问题是使用“LIKE”语句输出数据库中的所有内容——违背了使用搜索界面的目的。我不太确定我哪里出错了。

我尝试将 LIKE 替换为“=”,但什么都不显示,即使我 100% 确定该记录存在。

如有任何帮助,我们将不胜感激!

提前致谢

更新:抱歉误导性标题。我没有正确传递搜索查询。

最佳答案

String sql = " SELECT * FROM Table WHERE xColumn LIKE '%"+textView1.getText().toString()+"%'";
cursor = db.rawQuery(sql, null);

你可以像上面那样使用

关于android - 在 Android 中搜索 SQLite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8167696/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com