SQLiteDatabase: вставлять только в том случае, если значение не существует (не с помощью необработанной команды SQL)
Я знаю, что есть команда SQL, которая выглядит следующим образом:IF NOT EXISTS
, но с AndroidSQLiteDatabase
В классе есть несколько хороших методов, мне было интересно, можно ли вставить значение, если оно не существует с помощью метода.
В настоящее время я использую это, чтобы вставитьString
:
public long insertString(String key, String value) {
ContentValues initialValues = new ContentValues();
initialValues.put(key, value);
return db.insert(DATABASE_TABLE, null, initialValues);
}
(db
является примеромSQLiteDatabase
.)
Я попробовал методinsertOrThrow()
вместоinsert()
, но, похоже, делает то же самое, что иinsert()
, То есть, если значение уже находится в строке, оно вставляется снова, поэтому в строке теперь есть два значения одного и того же значения.