たぶん、あなたは、任意の既存のコメントの最後に新しいコメントを追加しようとしているのですか?そのような場合は、新しいコメントを別のテーブルに追加する場所(つまり、insert
)にデータベースを再設計する必要があります。すべてのコメントは、共通のキー(以下の例ではpost_id
列)を使用したい他の項目にリンクされています。 'Yeah really nice'
コメントを追加することが'Nice salute'
に代わる、あなたの現在のコードスニペット最後のコメントは常につまり、既存のコメントを置き換えますのよう
Table Posts:
post_id title description
1 'Hey' 'Description'
2 'Ho' 'Another Description'
Table Comments:
comment_id post_id comment
1 1 'Nice Salute'
2 1 'Yeah really nice'
3 2 'Ho Ho Ho'
:
あなたは、たとえば、データベース内でこのテーブルを設定している可能性がありコメント。
(私は私があなたはまた、データベースから既存のコメントを読んで、その結果に新しいコメントを連結でき:)
を提案しようとしています何を示唆しているんだとは思わない:
String columns = { "comment" };
String constraint = "PhoneNr=? AND Name=? AND comment=? AND Answered=?";
String args[] = { newn, contact, previuscom, Yn };
Cursor cursor = db.query("MyTab", columns , constraint, args, null, null, null);
String comments = cursor.getString(cursor.getColumnIndex("comment"));
comments += text.getText().toString();
その後、
そして、あなたの新しいコメント文字列と同じ行を更新:
ContentValues updateKoment = new ContentValues();
updateKoment.put("comment", comments);
db.update("MyTab", updateKoment, constraint, args);
しかし、私の個人的な意見のようこれは突合せ醜いソリューションおよびデータベースアーキテクトのwithiですあなたがそれを実行することを強くお勧めします。
出典
2012-05-09 13:49:53
dbm
何が間違っているかを知るには十分なコンテキストがありません(あなたはループしていますか? 'updateKoment'で何をしていますか?など)、あなたのコードをいくつか投稿してください。 – dmon
updateKomentは私の前のものを新しいものに置き換えてデータベースに保存することを意図しています。 – J1and1
「最後のレコードのみを追加する」とはどういう意味ですか? – Barak