私はコード19 のために、具体的には、以下の例外をキャッチしようとしているSQLiteConstraintExceptionのthe error codeを取得する方法はありますか?または単にメッセージの説明を「含む」チェックが必要なのでしょうか?どのようにJavaの
03-24 14:46:45.430:W/System.err(2219):android.database.sqlite。 SQLiteConstraintException:PRIMARY KEYはユニークでなければなりません(コード19)
try {
res = database.insertOrThrow(EMP_TABLE, null, values);
} catch (android.database.sqlite.SQLiteConstraintException e) {
e.printStackTrace();
//something like e.getErrorCode(); }
私の回避策ソリューションです。それは方法としては使用できませんなので
if(e.getMessage().contains("code 19"))
Log.d(TAG, "Key Already exists !");
例外をキャッチする代わりに、指定された行がすでに存在しているかどうかを確認します。その後、例外を処理する必要はありません。 – jakubbialkowski
どうすればいいですか?別のSQL文によって? – shamaleyte
なぜそれが必要でしょうか? res = database.insert(EMP_TABLE、null、values)を使用できます。例外はありません。あなたはresの値をチェックする必要があります。 -1の場合はエラーがありません。 –