11/26/2012

AndroidでのDatabase処理でinsertOrUpdate

Android:Is there a better way to insert and/or update a database entry?

AndroidのSQLiteのSQLiteDatabaseの動作は、insertとupdateが明確に分離している。
これ自体は、必ず新しく追加したい、必ず更新したいという動作をするときに必要になる。しかしながら、項目があれば更新なければ追加という動作を行いたい場合がある。これに関しては上記の質問の回答である。REPLACEを使えばよい。

SQLiteDatabase.replace

もともとSQLiteにはReplaceが特別な動作として定義されている。他のテーブルの場合には、INSERT IF CONFLICT や INSERT OR UPDATEがあったりしたと思った。

0 件のコメント:

コメントを投稿