java.lang.IllegalArgumentException: Empty bindArgs

在进行数据库数据删除或插入操作时出现java.lang.IllegalArgumentException: Empty bindArgs异常。

奇怪的是之前是可以正常使用的。

查看日志,定位到SQL语句:

//图片收藏取消
    public void deleteFavouritesImg(int imgId) {
        db = mDatabaseHelper.getWritableDatabase();
        db.execSQL("delete from " + TAB_FAVOURITES + " where " + FAV_IMG_ID + " = " + imgId,null);
    }
sql语句中bindArgs的参数是null,报的正是这个异常。

把null去掉,改成这样就好了

db.execSQL("delete from " + TAB_FAVOURITES + " where " + FAV_IMG_ID + " = " + imgId);
如果对数据库进行delete、update、insert操作,如果execSQL中bindArgs的参数为null,则不必写,否则会出现上述异常。select语句中selectionArgs为null则不受影响。






你可能感兴趣的:(Android)