私はこのようなテーブルを持っている
db.execSQL("CREATE TABLE " + TABLE_NAME + " ("
+ _ID + " INTEGER PRIMARY KEY,"
+ URL + " TEXT UNIQUE,"
+ SomeInfo + " TEXT,"
+ OtherInfo + " INTEGER"
+ ");");
そのため、各URL値に対して1つのレコードしかありません。 ユーザーがURLにアクセスしたとき、新しい行を挿入したり、URLが提示されている場合は既存の行を更新したりする必要はありません 私は2つの方法を考えることができました:
SQLiteDatabase.query
最初にアップデートがある場合はそれを適用します常に使用する
SQLiteDatabase.replace
UNIQUE制約が失敗した場合、sqliteはレコードを置き換えます。どちらのアプローチが良いですか? 他の提案はありますか? ありがとう
回答:
回答№1は1これは一般的な問題のように思われるので(私も最近直面しています) この郵便受け これは役に立つかもしれません。