[英]Check if value exist in DB with Boolean in Java
我想要做的是检查'profiles'表的profilePicture列内是否有任何数据,如果没有数据,getCount将返回0并返回false。 如何进行查询以仅获取 profilePicture 列中的数据,以查看用户 ID 是否为 null。
public Boolean checkProfilePicture(String user_id){
SQLiteDatabase MyDB = this.getReadableDatabase();
Cursor cursor = MyDB.rawQuery("Select * from profiles where ID = ? and profilePicture = NULL", new String[] {user_id});
System.out.println(cursor.getCount());
if (cursor.getCount() > 0)
return true;
else
return false;
}
您的查询应仅返回 1 列,即 boolean 值,格式为1
(真)或0
(假),为此您必须使用如下表达式:
profilePicture IS NOT NULL
您必须使用运算符IS
或IS NOT
而不是使用=
或<>
或!=
与NULL
进行比较:
public boolean checkProfilePicture(String user_id){
SQLiteDatabase MyDB = this.getReadableDatabase();
Cursor cursor = MyDB.rawQuery("SELECT profilePicture IS NOT NULL FROM profiles WHERE ID = ?", new String[] {user_id});
boolean result = cursor.moveToFirst();
if (result) result = (cursor.getInt(0) == 1) ;
cursor.close();
MyDB.close();
return result;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.