次のような SQL コマンドがあることは知っていますIF NOT EXISTS
が、Android のSQLiteDatabase
クラスには細かいメソッドがいくつかあるため、値が存在しない場合はメソッドを介して値を挿入できるかどうか疑問に思っていました。
現在、これを使用して挿入してい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()
です。つまり、値が既に行にある場合は、再度挿入されるため、行には同じ値の 2 つの値が含まれるようになります。