android – SQLiteConstraintException: error code 19: constraint failed-ThrowExceptions

Exception or error:

I’m getting that exception when I do an insert in my SQLite database

The following code gives me the exception:


The code from mDbHelper (MyDbAdapter):

private static final String USER_TABLE_CREATE = "CREATE TABLE user ( email varchar, password varchar, fullName varchar, mobilePhone varchar, mobileOperatingSystem varchar, PRIMARY KEY  (email))";

public long createUser(String email, String password, String fullName, String mobilePhone, String mobileOperatingSystem) 
        ContentValues initialValues = new ContentValues();
        return mDb.insert("user", null, initialValues);

The exception is created on the last line: return mDb.insert("user", null, initialValues);

How to solve:

You are inserting a duplicate email.

Plus the recommended way is to have a _ID column as primary key, even if you don’t use it. This way on future uses, like use in a Adapter or List, you won’t have to workaround.

Leave a Reply

Your email address will not be published. Required fields are marked *