java在SQLite数据库Android SDK中搜索特定字符串
我在Android SDK中使用SQLite数据库,我知道这是一个非常简单的问题,但我有以下功能。我试图搜索用户名是否在SQL数据库中,但我想不出如何构造查询
如果字符串“user”在表“ACCOUNT\u table”中,那么搜索的正确方法是什么
public boolean isUser(String user){
SQLiteDatabase db = this.getReadableDatabase();
String queryString = "SELECT " + COLUMN_USERNAME + " FROM " + ACCOUNT_TABLE + " WHERE " (???);
db.close();
/*if(found in database)
return true;
else
return false;*/
}
# 1 楼答案
请尝试以下查询:
String queryString=“从“+ACCOUNT\u TABLE+”中选择“+COLUMN\u USERNAME+”,其中COLUMN\u USERNAME类似“%”+users+“%”
这里
COLUMN_USERNAME
是你的database column
和Users
是要搜索的string
# 2 楼答案
正确的方法是使用
rawQuery()
方法,该方法使用两个参数:SELECT
语句,其中包含要传递的参数的?
占位符String
数组,包含sql语句参数的所有值,按它们在 声明rawQuery()
返回一个Cursor
,您可以检查它是否包含任何行,如果包含行,这意味着您搜索的user
存在于表中: