SQLiteDatabase插入函数返回-1

时间:2013-09-12 01:06:22

标签: android sqlite insert

我有一个调用Medicine的数据库,其中有四列:id(主键自动增量),dId(外键),名称和时间。我尝试使用插入函数添加新行。此函数必须返回此添加的id。但是当我从调试器检查这个时,我看到它返回-1。

代码:

        ContentValues values = new ContentValues();
        values.put("RECIPE_ID", recipeId);
        values.put("MED_NAME", etMedName.getText().toString());
        values.put("MED_TIME", etMedTime.getText().toString());
        long mid = sqdb.insert("Medicine", null, values);

1 个答案:

答案 0 :(得分:6)

使用

 long mid = 0;

try
    {
        mid = sqdb.insertOrThrow("Medicine", null, values);
    }
    catch(SQLException e)
    {
        // Sep 12, 2013 6:50:17 AM
        Log.e("Exception","SQLException"+String.valueOf(e.getMessage()));
        e.printStackTrace();
    }

它会告诉你可能的异常