title: android.database.sqlite.SQLiteConstraintException: columnidisnotunique(code19) android.database.sqlite.SQLiteConstraintException
body: <p>first time when inserting the row it works without any issues. But the after installing the app in same device(installing from eclipse without uninstall the app from device) and trying to insert new row it throws exception</p>
  
  <pre><code>10-1216: 36: 38.405: E/AndroidRuntime(32429): Causedby:android.database.sqlite.SQLiteConstraintException: columnidisnotunique(code19)
  10-12 16:36:38.405: E/AndroidRuntime(32429): Caused by: android.database.sqlite.SQLiteConstraintException: column id is not unique (code 19)
  10-12 16:36:38.405: E/AndroidRuntime(32429):    at android.database.sqlite.SQLiteConnection.nativeExecuteForChangedRowCount(Native Method)
  10-12 16:36:38.405: E/AndroidRuntime(32429):    at android.database.sqlite.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:727)
  10-12 16:36:38.405: E/AndroidRuntime(32429):    at android.database.sqlite.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:754)
  10-12 16:36:38.405: E/AndroidRuntime(32429):    at android.database.sqlite.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:64)
  10-12 16:36:38.405: E/AndroidRuntime(32429):    at android.database.sqlite.SQLiteDatabase.updateWithOnConflict(SQLiteDatabase.java:1565)
  10-12 16:36:38.405: E/AndroidRuntime(32429):    at android.database.sqlite.SQLiteDatabase.update(SQLiteDatabase.java:1514)
  </code></pre>
  
  <p>Create Table:</p>
  
  <pre><code>    public void onCreate(SQLiteDatabase db) {
      String CREATE_CONTACTS_TABLE = "CREATE TABLE " + TABLE_USER_DATA + "("
              + KEY_ID + " TEXT PRIMARY KEY," + KEY_TIMESTAMP + " TEXT,"
              + KEY_JSON_DATA + " TEXT" + ")";
      db.execSQL(CREATE_CONTACTS_TABLE);
  }
  </code></pre>
  
  <p>Insert:</p>
  
  <pre><code>    public void addJsonData(JSONDataStore dataStore) {
      SQLiteDatabase db = this.getWritableDatabase();
  
      ContentValues values = new ContentValues();
      values.put(KEY_ID, dataStore.getKey());
      values.put(KEY_TIMESTAMP, dataStore.getTimeStamp());
      values.put(KEY_JSON_DATA, dataStore.getJsonData());
  
      db.insert(TABLE_USER_DATA, null, values);
  }
  </code></pre>
  
  <p>Upgrade:</p>
  
  <pre><code>    @Override
  public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
      db.execSQL("DROP TABLE IF EXISTS " + TABLE_USER_DATA);
  
      onCreate(db);
  }
  </code></pre>
  
  <p>Exception when inserting:</p>
  
  <pre><code>    db.insert(TABLE_USER_DATA, null, values);
  </code></pre>