Я знаю, что есть команда SQL, которая выглядит так: IF NOT EXISTS
, но поскольку класс SQLiteDatabase
Android имеет несколько хороших методов, мне было интересно, можно ли вставить значение, если оно не существует, с помощью метода.
В настоящее время я использую это, чтобы вставить 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()
. То есть, если значение уже находится в строке, оно вставляется снова, поэтому теперь в строке есть два значения с одинаковым значением.