У меня общая проблема, и я рассмотрел несколько решений, но не нашел решения, подходящего для этого случая.
У меня есть временная таблица, которая определяется следующим образом:
public static final String GROUP_TABLE_CREATE =
"CREATE TEMP TABLE "+GROUP_TABLE_NAME+" ("
+GROUP_ID_COLUMN_NAME+" INTEGER PRIMARY KEY AUTOINCREMENT, "
+GROUP_GROUP_ID_COLUMN_NAME+" INTEGER NOT NULL UNIQUE, "
+GROUP_COLUMN_NAME+" VARCHAR(64) NOT NULL)";
Таблица создана без проблем. Затем я загружаю некоторые данные для вставки в него и использую следующий запрос для вставки:
ContentValues contentValues = new ContentValues();
contentValues.put(WhereWolfOpenHelper.GROUP_GROUP_ID_COLUMN_NAME, groupID);
contentValues.put(WhereWolfOpenHelper.GROUP_COLUMN_NAME, groupName);
db.insert(WhereWolfOpenHelper.GROUP_TABLE_NAME, null, contentValues);
И тогда я получаю следующую ошибку:
08-05 08:52:37.791: ERROR/Database(847): Error inserting group_name=Friends group_id=2
08-05 08:52:37.791: ERROR/Database(847): android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed
Ошибка появляется дважды , и единственными данными в базе данных является группа с именем Friends (должно быть еще две записи).
У меня есть еще одна таблица с очень похожим кодом, которая работает без каких-либо проблем, поэтому я предполагаю, что это просто глупая ошибка, которую я не заметил. У кого-нибудь есть идеи?