Android数据库查询操作的一次粗心费时

来源:互联网 发布:淘宝食品类别名称 编辑:程序博客网 时间:2024/05/29 03:23
最近在做一个android端的加密解密工具,基本做的差不多了,数据库操作也都完成了,今天和往常一样在写代码。想再添加一个功能,在加密文件之前判断文件是否存在于数据库中来判断是否已经加密过该文件。于是需要一个查询数据库的操作。刚开始测试没问题,加密过的能够查询出来已经加密过,但是没有加密过的一查询就抛出个异常,说:::
 java.lang.IllegalArgumentException: the bind value at index 1 is null
浪费了我好多时间找原因,找百度,找谷歌,然后一直检查我的代码,一直各种测试。起初我以为是因为数据库为空不允许查询,但是测试发现不是。后来我就去打印log来看,我的文件选择器是自己写的,在回调方法中会给一个String [] 类型的文件列表,我通过一个循环来查询判断该文件是否存在,在log中发现--只选择了两个文件进行加密却循环查询了3次数据库,才想起来我的文件选择器返回的String []中的值是带有null的,需要做null值的判断,一时粗心忘记了这回事导致浪费了几个小时的时间。所以我得记下来,在以后开发中如果迫不得已必须返回一个带有null的数组一定要声明需要做null的判断。
1 0
原创粉丝点击