4

我有一个调用 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);
4

1 回答 1

9

利用

 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();
    }

它会告诉你可能的异常

于 2013-09-12T01:21:08.933 回答