次のようなテーブルがあります。
CREATE TABLE students(
firstname VARCHAR(64),
lastname VARCHAR(64),
essay LONGTEXT,
UNIQUE(firstname, lastname) ON CONFLICT REPLACE);
レコードを挿入したい - 既に存在する場合は、更新したいだけです:
String firstname = "bob";
String lastname = "smith";
String essay = "foo";
ContentValues values = new ContentValues();
values.put("firstname", firstname);
values.put("lastname", lastname);
values.put("essay", essay);
SQLiteDatabase db = ...;
db.insert("students", null, values);
「ON CONFLICT REPLACE」を使用しているため、両方のケースを処理するために insert() メソッドに頼ることができます: (1) 学生のエントリが存在しないため、(2) 学生のエントリが存在するため、挿入します。上書きします。
ありがとう