Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android sqlite-选择字段为null或空的记录_Android_Sqlite - Fatal编程技术网

Android sqlite-选择字段为null或空的记录

Android sqlite-选择字段为null或空的记录,android,sqlite,Android,Sqlite,我的应用程序有一个sqlite DB,其中一些字段为null或空(这意味着我从未在该字段中插入任何内容) `@Query("SELECT *FROM notifications WHERE status=:status OR status = null")` @Query("SELECT *FROM notifications WHERE status=:status OR status is null") 我希望选择字段为null或空的所有记录 `@Query("SELECT *FR

我的应用程序有一个sqlite DB,其中一些字段为null或空(这意味着我从未在该字段中插入任何内容)

`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")
我希望选择字段为null或空的所有记录

`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")
这就是我尝试过的:

cursor = db.query(DBHelper.TABLE_NAME, COLUMNS, "folder_name = ? ", new String[] {"null"}, null, null, DBHelper.TIMESTAMP_COL + " DESC");
`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")
但那没用,我也没有任何记录。我需要做什么才能使这项工作正常进行?

只需使用“文件夹名称为空”

试试看

cursor = db.query(DBHelper.TABLE_NAME, COLUMNS, "folder_name is null or folder_name = ?", new String[] {""}, null, null, DBHelper.TIMESTAMP_COL + " DESC");
`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")

我使用的是android studio 3.4, 房间2.1.0-07

`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")
这是我的Kotlin代码
我试着用了这个,但没有达到预期效果

`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")
这个很好用

`@Query("SELECT *FROM notifications WHERE status=:status OR status = null")`   
@Query("SELECT *FROM notifications WHERE status=:status OR status is null")

你应该在回答中提供更多细节。这假设OP理解您的意思。考虑添加一个例子来做出更高质量的答案。如果“FoLDRyNoNo=”真的是必要的或过度的,没有一个答案提供了澄清。您是唯一一个同时使用is NULL和空字符串检查的人,因此您能否澄清为什么要进行双重检查(或者如果是预防性的)?问题是如何选择
文件夹名称
NULL
或空的记录。我假设
empty
empty string
的缩写。如果我错了,我仍然会建议进行预防性空字符串检查。