0

listView にコメントがあり"www.google.lv"ます。
同じコメント ( "www.google.lv") を再度入力しようとすると、このコメントが作成されますが、前の同じコメントはデータベースから削除されます。それらは複製されるべきではありませんが、最新のコメントとして作成されます。

出来ますか?

4

1 に答える 1

0

コメントを作成する方法ですが、同じものが存在する場合、sqliteデータベースで古いものを削除しますか?

コマンドを使用するだけINSERT OR REPLACE ...です。

  • エントリが存在しない場合は、データベースに挿入されます。
  • 存在する場合、古いエントリは新しいエントリに置き換えられます。

追加
ContentValues を使用してデータベースにデータを挿入しているため。database.insertWithOnConflict()の代わりに を呼び出しdatabase.insert()ます。試す:

database.insertWithOnConflict(MySQLiteHelper.TABLE_COMMENTS, null, values, SQLiteDatabase.CONFLICT_REPLACE);

UNIQUE(これは、データベースに適切な制約があることを前提としています...)

于 2013-01-20T17:57:11.140 に答える