Sqlite数据库InsertOrThrow行没有执行给出FATAL EXCEPTION - Android

时间:2015-01-08 06:59:25

标签: java android database sqlite exception

这是我在其中插入数据的数据库方法... 它工作正常,突然之间,它突然开始给予致命的异常

public boolean insertReport(String name, String title, String date, String status) {

        db.beginTransaction();
        try {
            ContentValues cv = new ContentValues();
            cv.put("name", name);
            cv.put("elabel_title", title);
            cv.put("date", date);
            cv.put("status", status);

            db.insertOrThrow("savedreports", null, cv);
            db.setTransactionSuccessful();
        } catch (SQLiteConstraintException e) {
            return false;
        } finally {
            db.endTransaction();
        }
        return true;
    }

我使用断点调试它, 一切顺利,但在执行cv.put("status", status);行后,它会直接跳转到finally块:/
不执行insertOrThrow ...
我做错了什么???

1 个答案:

答案 0 :(得分:-2)

我有同样的问题,这是我认为的简单解决方案。

“状态”列肯定不存在于您的数据库列中,请检查。

问题出在这一行

cv.put("status", status); 

您可能没有将此“状态”列添加到数据库中。 因为它没有找到任何状态列,所以它会跳出来。